黑马程序员技术交流社区
标题:
IO操作文件中复制时的问题?
[打印本页]
作者:
王新春
时间:
2011-11-15 13:16
标题:
IO操作文件中复制时的问题?
本帖最后由 王新春 于 2011-11-22 16:51 编辑
当要把d:\\RuntimeDemo.java这个文件复制到c:\\RuntimeDemo_copy.java中的时候,那要是C盘下已经存在了一个RuntimeDemo_copy.java文件的时候,那么不想重新在创建这个文件了,也不想覆盖它,那么还能输出一个提示,该怎么做呢?
import java.io.*;
public class CopyText {
public static void main(String[] args) throws Exception{
copy_1();
}
public static void copy_1()throws Exception
{
//创建目的地。
FileWriter fw=new FileWriter("c:\\RuntimeDemo_copy.txt");
//与已有文件关联。
FileReader fr=new FileReader("d:\\RuntimeDemo.java");
int ch=0;
while((ch=fr.read())!=-1)
{
fw.write(ch);
}
fw.close();
fr.close();
}
}
作者:
强子
时间:
2011-11-15 13:33
可以先判断RuntimeDemo_copy.java文件是否存在
if存在{
}
else{
}
作者:
宋文轩
时间:
2011-11-15 13:56
本帖最后由 宋文轩 于 2011-11-15 15:24 编辑
FileWriter fw=new FileWriter("c:\\RuntimeDemo_copy.txt");
这句前面建立一个File对象 用File对象File file=new File(c:\\RuntimeDemo_copy.txt) 然后用file.exists()方法来判断这个文件是否存在了。如果存在了可以直接抛出RuntimeException("目标文件已经存在,请检查!")
然后改 写入流为 FileWritre fw=new FileWriter(file);就可以了。File这个类后面的视频会讲到的。
作者:
高双武
时间:
2011-11-15 17:09
package execisetest;
import java.io.*;
public class CopyText {
private static FileWriter fw=null;
public static void main(String[] args) throws Exception{
copy_1();
}
public static void copy_1()throws Exception
{
//创建目的地。
//如果存在则返回不存在则执行
if(creatStream()==0){
//与已有文件关联。
FileReader fr=new FileReader("d:\\RuntimeDemo.java");
int ch=0;
while((ch=fr.read())!=-1)
{
fw.write(ch);
}
fw.close();
fr.close();
}
else
return;
}
public static int creatStream()throws IOException{
String fileName="c:\\RuntimeDemo_copy.txt";
File ff=new File(fileName);
if(ff.exists()){
System.out.println(fileName+"文件已存在");
return 1;
}
else
fw=new FileWriter("c:\\RuntimeDemo_copy.txt");
return 0;
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2