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 ...
随机推荐
- FastMM、FastCode、FastMove的使用(图文并茂)
FastMM是一个替换Embarcadero Delphi Win32应用程序的快速内存管理器,以及可以在多线程下使用,不容易产生内存碎片,并且无需使用外部DLL文件就可以支持共享内存. 使用方法:1 ...
- sphinx续4-coreseek的工作原理
原文地址:http://blog.itpub.net/29806344/viewspace-1399621/ 在分析sphix原理之前,我先澄清一下为什么经常出现coreseek这个词? 因为sphi ...
- php--如何解决网站分页导致的SEO问题
如何解决网站分页导致的SEO问题 分页(pagination)是一种自动分页机制,可以将移动Web窗体中的内容分割成一组组较小的页进行呈现,以适合于特定的设备,该机制还呈现可用于浏览到其他页的用户界面 ...
- PM2的使用
PM2 是一个带有负载均衡功能的 Node 应用的进程管理器. 安装 npm install -g pm2 启动程序:pm2 start <app_name|id|all> 列举进程:pm ...
- [LeetCode]题解(python):102 Binary Tree Level Order Traversal
题目来源 https://leetcode.com/problems/binary-tree-level-order-traversal/ Given a binary tree, return th ...
- java.lang.NoClassDefFoundError: Could not initialize class ......
在测试数据字典工具类的时候一直报这个错误,找了好久,原来是SpringContextUtils这个类没有放入到容器中. 但是我在SpringContextUtils上面加了注解的,为什么注解没有扫到呢 ...
- CentOS 6.8内核版本升级(升级至3.10)(转)
1.查看当前版本 [root@www.linuxidc.com docker]# cat /etc/issue CentOS release 6.8 (Final) Kernel \r on an \ ...
- jQuery选择器总结(转)
? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 ...
- 在 virtualbox 的 centos7 虚拟机中安装增强工具
在 virtualbox 的 centos7 虚拟机中安装增强工具 centos7 刚刚安装完成时,直接安装 virtualbox 增强工具会出错,需要先把 gcc / kernel-devel / ...
- iOS网络相关零散知识总结
iOS网络相关零散知识总结 1. URL和HTTP知识 (1) URL的全称是Uniform Resource Locator(统一资源定位符). URL的基本格式 = 协议://主机地址/路径 ...