黑马程序员技术交流社区
标题:
求大神,怎么把.java文件改成.txt?一直没做出来
[打印本页]
作者:
gao896827735
时间:
2015-1-13 15:04
标题:
求大神,怎么把.java文件改成.txt?一直没做出来
File dir=new File("d:\\java\\testjava");
File[] files = dir.listFiles();
for (int x=0;x<files.length;x++)
{
String old = files[x].getName();
String value = old.replace(".java", ".txt");
files[x].renameTo(new File(value));
}
这样写的,就是搞不成
作者:
weiwei10153
时间:
2015-1-13 17:16
File dir = new File("d:\\java\\testjava");
File[] files = dir.listFiles();
for (int x = 0; x < files.length; x++) {
String old = files[x].getName();
String value = old.replace(".java", ".txt");
// 需要指定父目录
files[x].renameTo(new File(dir, value));
// 或者使用下面这种方法
// files[x].renameTo(new File(files[x].getAbsolutePath().replace(".java", ".txt")));
}
复制代码
作者:
fluency
时间:
2015-1-17 11:46
楼上那个就对了 再说你自己写的那个 文件名和扩展名之间少了个“.” 太大意
作者:
Smart_lll
时间:
2015-1-17 12:15
weiwei10153 发表于 2015-1-13 17:16
如果文件名中包含.java文件怎么办?例如文件名为:copy.java.java
作者:
bluebloodant
时间:
2015-1-17 12:37
帮顶一下
作者:
gx_lv
时间:
2015-1-17 13:00
把一个文件夹下的包括子文件夹里的所有.java文件复制到另一个文件夹下面,并改名.txt
你参考下。。。
import java.io.*;
import java.util.*;
class CopyRename
{
public static void main(String[] args) throws IOException
{
//源文件夹
File dir = new File("d:\\javademo");
List<File> list = new ArrayList<File>();
fileToList(dir,list);
//目标文件夹
File filedir = new File("d:\\hahha");
if (!filedir.exists())
filedir.mkdir();
writeToFile(list,filedir);
}
//函数功能,把一个文件夹中包括子文件夹的所有.java文件存到dirlist集合中
public static void fileToList(File dir,List<File> list)
{
File[] files = dir.listFiles();
for(File file : files )
{
if (file.isDirectory())
fileToList(file,list);
else
{
if (file.getName().endsWith(".java"))
list.add(file);
}
}
}
//函数功能,用IO字符流操作复制文件,并将.java文件改成.txt
public static void writeToFile(List<File> list,File filedir) throws IOException
{
//遍历集合
for (File file : list)
{
BufferedReader bufr = new BufferedReader(new FileReader(file));
String newName = file.getName().replace(".java",".txt");
BufferedWriter bufw = new BufferedWriter(new FileWriter(new File(filedir,newName)));
String len = null;
while ((len = bufr.readLine()) != null)
{
bufw.write(len);
bufw.newLine();
bufw.flush();
}
bufr.close();
bufw.close();
}
}
}
复制代码
作者:
shenshuangxi
时间:
2015-1-17 13:37
public class FileList {
public static void main(String[] args) {
// TODO Auto-generated method stub
File dir=new File("F:\\javautil");
File[] files = dir.listFiles();
for (File file : files)
{
// 判断是否为文件
if(file.isFile()){
// 判断是否为java文件
Pattern p = Pattern.compile(".java");
Matcher m = p.matcher(file.getName());
if(m.find()){
// 获取路径
String dirPath = file.getAbsolutePath().substring(0, file.getAbsolutePath().lastIndexOf("\\")+1);
// 获取文件名
String fileName = file.getName();
// 替换文件名
fileName = fileName.replaceAll(".java", ".txt");
// 修改文件名
file.renameTo(new File(dirPath+fileName));
}
}
}
}
}
作者:
446111220
时间:
2015-1-17 16:41
看看大神怎么说
作者:
鹰击长空168
时间:
2015-1-17 20:24
挺好,学习了!
作者:
yukuoyuan
时间:
2015-1-17 21:24
慢慢来不要急,,多练练就知道了
作者:
SNXJ
时间:
2015-1-17 21:50
楼上很详细了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2