下面的flush和close随意交换一下就会不能复制文件了
import java.io.FileReader;
import java.io.BufferedReader;
import java.io.FileWriter;
import java.io.BufferedWriter;
import java.io.IOException;
public class Copy
{
public static void main(String args[])
{
try
{
FileReader fr=new FileReader("file1.txt");
BufferedReader br=new BufferedReader(fr);
FileWriter fw=new FileWriter("file2.txt");
BufferedWriter bw=new BufferedWriter(fw);
String line=br.readLine();
while(line!=null)
{
bw.write(line);
bw.newLine();
line=br.readLine();
}
System.out.println("copy完成");
bw.flush();
fw.close();
br.close();
fr.close();
}
catch(IOException ie)
{
System.out.println("文件不存在");
}
}
}
import java.io.FileReader;
import java.io.BufferedReader;
import java.io.FileWriter;
import java.io.BufferedWriter;
import java.io.IOException;
public class Copy
{
public static void main(String args[])
{
try
{
FileReader fr=new FileReader("file1.txt");
BufferedReader br=new BufferedReader(fr);
FileWriter fw=new FileWriter("file2.txt");
BufferedWriter bw=new BufferedWriter(fw);
String line=br.readLine();
while(line!=null)
{
bw.write(line);
bw.newLine();
line=br.readLine();
}
System.out.println("copy完成");
bw.flush();
fw.close();
br.close();
fr.close();
}
catch(IOException ie)
{
System.out.println("文件不存在");
}
}
}
解决方案 »
- 请问谁知道哪里有汉字字表
- Java中利用二维数组存储输入字符串问题
- 采鸟 求助 在线 !!!
- java中怎么把月/日/年格式的字符串转换成年/月/日的日期格式?
- 请教大家一个关于数组参数间赋值的问题!
- 关于 ResourceBundle 类的用法..
- 设计数据时定义一字段默认值为Date,用rs.getString("userdate")取出后发现是2003-12-25 00:00:00,怎么办?
- 我从jbuilder8安装后考下来的jdk1.4为什么不能在我的系统中配置啊? 急
- 关于抽象类的一个简单问题!送分!
- 如何用java实现网络蚂蚁的功能
- 怎么理解FileReader fr=new FileReader("win.ini");和BufferedReader br=new BufferedReader(fr);虽然会用但每行应怎么理解
- 关于评定等级的问题||另外还有就是如何把一个JTable里面的东西导出到一个文本文档里面?
close()是释放流资源...如果你流资源都被关闭了,你再flush(),刷新的谁呢?flush()一般是你保证当前资源写入流中才用(不用flush()的话,直到缓存满了才写入流,所以时间不确定),所以一般是你需要的东西都write()完了后面就跟个flush();close()肯定是你确定此资源不再被使用了才关.也就是最后才使用
因为LZ写的是
bw=new BufferedWriter(fw);
所以bw、fw操作的是同一个流资源..故相互有影响。
是的...当缓存满了时也会自动做一遍写入...close()时也会自动做一遍