java 写文件 存在一个文本文件,且里面有文本数据 现在要向其中添加新的文本信息,该怎么做?我用了FileWriter 的write方法写文件 发现原来的文本信息丢失了. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 PrintWriter pw = new PrintWriter(new FileOutputStream(file, true)); import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import java.util.ArrayList;import java.util.LinkedList;import java.util.Random;public class ReadFile { private LinkedList<String> list = new LinkedList<String>(); private ArrayList<String> array = new ArrayList<String>(); Random random = new Random(); void allocation() { File filein = new File("bin\\stdname.txt"); File fileout = new File("bin\\stdnamesort.txt"); try { FileReader fr = new FileReader(filein); FileWriter fw = new FileWriter(fileout); BufferedReader br = new BufferedReader(fr); BufferedWriter bw =new BufferedWriter(fw); try { while (true) { String string = br.readLine(); if (string == null) { break; } array.add(string); } for (int i = 0; i < array.size(); i++) { bw.write(array.get(i) + ": "); for (int j = 0; j < 10; j++) { String s = array.get(random.nextInt(array.size())); if (s.equals(array.get(i))) { j--; } else if (list.contains(s)) { j--; }else { list.add(s); } } bw.write(list+" "); list.removeAll(list); bw.write("\r\n\r\n"); } bw.flush(); bw.close(); System.out.println("完成写入."); } catch (IOException e) { System.out.println("不能读取文件."); } } catch (FileNotFoundException e) { System.out.println("文件未找到."); } catch (IOException e) { System.out.println("写入出错."); } } public static void main(String[] args) { new ReadFile().allocation(); }}给楼主一个我自己的实例.. 参考下吧. FileWriter(File file, boolean append) 追加内容 java.lang.Object java.io.Writer FilterWriter PrintWriter FilterWriter.write方法抛错 PrintWriter.write方法不抛错 感谢楼上各位,二楼的方法太复杂了.把原文件读了一遍,又再写了一遍, 我想java应该有现成的API 不用那么繁的 求绘图问题 求助:关于java反编译 byte出现16进制 负数 聊天小程序 一个例题(简单),求多解, 各位大侠帮帮我。。。 用了setXorMode(背景色)之后,如何取消xor模式,就是恢复常规模式 谁能帮我看看一个小的程序 (送高分) 急!关于打印机API的问题 哪里可以下载IntelliJ IDEA 2.5/2.6, 最好是免费的,有注册码.多谢 一道关于循环的题(随机生成10个不重复的数字) java中如何打印List<Type>中的内容 敢問各位大俠,項目中的版本控制你們都是怎麽實現的呀?
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.Random;public class ReadFile {
private LinkedList<String> list = new LinkedList<String>();
private ArrayList<String> array = new ArrayList<String>();
Random random = new Random(); void allocation() {
File filein = new File("bin\\stdname.txt");
File fileout = new File("bin\\stdnamesort.txt");
try {
FileReader fr = new FileReader(filein);
FileWriter fw = new FileWriter(fileout);
BufferedReader br = new BufferedReader(fr);
BufferedWriter bw =new BufferedWriter(fw);
try {
while (true) {
String string = br.readLine();
if (string == null) {
break;
}
array.add(string);
}
for (int i = 0; i < array.size(); i++) {
bw.write(array.get(i) + ": ");
for (int j = 0; j < 10; j++) {
String s = array.get(random.nextInt(array.size()));
if (s.equals(array.get(i))) {
j--;
}
else if (list.contains(s)) {
j--;
}else {
list.add(s);
}
}
bw.write(list+" ");
list.removeAll(list);
bw.write("\r\n\r\n");
}
bw.flush();
bw.close();
System.out.println("完成写入.");
} catch (IOException e) {
System.out.println("不能读取文件.");
}
} catch (FileNotFoundException e) {
System.out.println("文件未找到.");
} catch (IOException e) {
System.out.println("写入出错.");
}
} public static void main(String[] args) {
new ReadFile().allocation();
}
}
给楼主一个我自己的实例.. 参考下吧.
java.io.Writer
FilterWriter
PrintWriter
FilterWriter.write方法抛错
PrintWriter.write方法不抛错 感谢楼上各位,二楼的方法太复杂了.把原文件读了一遍,又再写了一遍, 我想java应该有现成的API 不用那么繁的