2016-9-6 批量给文件名的前面加上“igeek_高薪就业” 2、 利用FileInputStream和FileOutputStream复制文件
在此只列出典型题目,有的题目扫一眼就有代码的不去浪费时间了,想要完整题目的评论留邮箱,看到就发.持续更新中...
1、批量给文件名的前面加上“igeek_高薪就业”
package com.work;
import java.io.File;
public class Work0906 {
public static void main(String[] args) {
//1、批量给文件名的前面加上“igeek_高薪就业”
String path = "D:/wkexp/extjs";
String newName = "igeek_高薪就业";
File[] files = new File(path).listFiles();
rename(files,newName);
}
public static void rename(File[] files,String newName){
if(files==null)
return;
for(int i=0;i<files.length;i++){
//System.out.println("getParent "+files[i].getParent());
//System.out.println("getPath "+files[i].getPath());
//System.out.println("getAbsolutePath "+files[i].getAbsolutePath());
//System.out.println("getName "+files[i].getName());
//System.out.println(files[i].getAbsolutePath().lastIndexOf(File.separator));//File.separator与系统有关的默认名称分隔符。
//父目录 其实都多余
String path = files[i].getAbsolutePath().substring(0,files[i].getAbsolutePath().lastIndexOf(File.separator));
//System.out.println("path "+path);
//为文件的情况
if(files[i].isFile() && files[i].exists()){
//获取文件后缀名(非文件夹)设置起始点为0可以获取文件名(去后缀),写在这儿吧,实际用不到 其实都多余
//String extension = files[i].getName().lastIndexOf(".")!=-1?files[i].getName().substring(files[i].getName().lastIndexOf(".")):"";
//System.out.println(files[i].getName());
//创建新的文件替换原来的文件
files[i].renameTo(new File(path+"/"+newName+files[i].getName()));
}
//目录的情况暂时不考虑,思路是复制目录下所有的文件,但是应该有更简洁的办法
}
}
}

写下来竟然也花了半个小时的时间,出乎意料,主要开始想的太多了,本想分成文件和文件夹2中形式,再将文件名拆分成前缀和后缀,忘记有renameTo这个方法了,不过也好这样对文件目录的操作又熟悉了,下次2分钟搞定,
果然还是要先有思路,自己能想到有可能的快捷封装方法,前人必定也想到了,哈哈
2、利用FileInputStream和FileOutputStream复制文件
public static void copy() throws Exception{
String goalName = "copy.txt";
FileInputStream fis = new FileInputStream(new File("D:/wkexp/extjs/igeek_高薪就业igeek_高薪就业igeek_高薪就业CSXY.txt"));
FileOutputStream fos = new FileOutputStream(new File("D:/wkexp/extjs/copy.txt"));
byte[] buff = new byte[512];//我直接用了字节数组,已经知道2者性能
int len=0;
//FileInputStream read方法达到文件尾返回-1
while((len = fis.read(buff))!=-1){
fos.write(buff, 0, (int) len);
}
fos.flush();
fos.close();
fis.close();
}
这个到时很快,5分钟刚搞定,共能实现,就这样吧,顺便扫了一眼api文档,还是有东西会遗忘的,熟练度啊熟练度,果然不写就忘

2016-9-6 批量给文件名的前面加上“igeek_高薪就业” 2、 利用FileInputStream和FileOutputStream复制文件的更多相关文章
- Python 批量修改文件名
最近下载了几部美剧(越狱.迷失.权利的游戏......),每集文件名都好长好长..想改短一些,但一个一个改太累了,于是写了个脚本来实现批量修改: 修改前文件名: 修改后文件名: 代码实现: #enco ...
- 使用Java中File类批量创建文件和批量修改文件名
批量创建文件 int cont = 1; String s = "E:\\学习资料\\Java笔记-"; while(cont<100){ File f = new File ...
- Linux下find一次查找多个指定类型文件,指定文件或者排除某类文件,在 GREP 中匹配多个关键 批量修改文件名等
http://blog.sina.com.cn/s/blog_62e7fe670101dg9d.html linux下二进制文件查找: strings 0000.ts | grep -o " ...
- [转载][记录]shell 批量修改文件名
参考了:[新手入门] shell脚本批量修改文件名 4楼回复 我刚好是在vagrant+ubuntu中进行开发,windows手动修改太麻烦. #!/bin/ksh ls *.htm | while ...
- linux批量修改文件名的shell脚本
linux中批量修改文件名的shell脚本代码,主要是使用了rename,结合shell,喜欢的朋友可以参考下 使用 rename 命令 ======================== NAME ...
- 用python批量修改文件名
从youtube上当下来百来首mv,每个都需要去掉视频,这还挺好弄得,格式工厂一弄就完了,但是文件名,都带有乱七八糟的*啥的巴拉巴拉的,咋修改啊,几百首总不可能一个一个rename吧 #批量修改文件名 ...
- Linux下批量修改文件名方法
对于在Linux中修改文件名的方式一般我们会用mv命令进行修改,但是mv命令是无法处理大量文件修改名称. 但是在处理大量文件的时候该如何进行批量修改呢? 方法一:mv配合for循环方式进行修改 [ro ...
- windows下如何批量修改文件名
windows下如何批量修改文件名 一.总结 一句话总结:就是用excel生成了多条修改文件名的dos命令然后执行,比较核心的就是把图片名称导入excel 将图片名称导入excel---编写如下DOS ...
- C# 批量修改文件名
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
随机推荐
- FastDFS分布式文件系统安装与使用(单节点)
http://blog.csdn.net/xyang81/article/details/52837974 http://download.csdn.net/detail/xyang81/966749 ...
- sql性能优化小技巧(一)
关于sql条件匹配对执行效率影响测试 首先,创建一个标量函数create function ff_test() returns int as begin declare @i int=0 while( ...
- C++ TrieTree(字典树)容器的实现
最近研究了一下C++线程池,在网上看了一下别人的代码,写的很不错,参见:http://www.cnblogs.com/lidabo/p/3328646.html 其中,他用了STL的set容器管理线程 ...
- graphviz - Node Shapes
Node Shapes There are three main types of shapes : polygon-based, record-based and user-defined. The ...
- Tomcat 处理请求时的中文乱码问题
利用Tomcat8作为服务器,采用servlet接收前端请求后进行处理的过程中,前台请求中有中文时,中文信息变成了乱码. 经过调试和查阅,发现Tomcat在处理get请求和post请求是有区别的.参照 ...
- angularJs的工具方法
- Ubuntu下面安装eclipse for c++
1.下载jdk,cdt,eclipse. 其中jdk是java运行环境,eclipse需要先装jre,才可能运行,cdt是在eclipse中运行c\c++程序的插件.jdk安装见上文. 2.eclip ...
- saltstack之(九)配置管理源码部署Nginx
场景:rpm包安装的nginx服务,无法满足定制模块的需求,故线上环境使用nginx源码进行安装.本片文章详细介绍如何使用saltstack的配置管理功能实现nginx软件的源码安装. 下载源码:pc ...
- [转载]windows任务管理器中的工作设置内存,内存专用工作集,提交大小详解
windows任务管理器中的工作设置内存,内存专用工作集,提交大小详解 http://shashanzhao.com/archives/832.html 虽然是中文字,但是理解起来还是很困难,什么叫工 ...
- IDisplayTransformation
IDisplayTransformation Bounds Full extent in world coordinates. The Bounds property controls the ful ...