求助,IO流输出输入问题

Jarvan_four 2019-03-13 04:08:42
package myIO.com;

import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

public class CopyFileDemo {
public static void main(String[] args) throws IOException {
FileWriter fw = new FileWriter("A.txt");

fw.write("abcdefjhijklmn");
fw.flush();
fw.close();

FileReader fr = new FileReader("A.txt");
FileWriter fw1 = new FileWriter("B.txt");
while(fr.read()!=-1) {
fw1.write(fr.read());
}
fr.close();
fw1.flush();
fw1.close();
}
}
代码如上:
A.txt:abcdefjhijklmn
B.txt:bdfhjln
为什么会少数据
...全文
122 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
qybao 2019-03-13
  • 打赏
  • 举报
回复
while(fr.read()!=-1) { //这里读出的数据没有被你写到文件,被你跳过去了。
fw1.write(fr.read()); //这里又读一次数据。所以你看你写的文件每两个字符就漏掉前一个字符
}

int c;
while((c=fr.read())!=-1) { //这里read读出的数据没有被你写到文件,所以你看你写的文件每两个字符就漏掉前一个字符
fw1.write(c);
}
  • 打赏
  • 举报
回复
FileWriter fw1 = new FileWriter("B.txt"); 在里面加上true 你应该这样写 FileWriter fw1 = new FileWriter("B.txt"true);

51,410

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧