[size=medium][b]1,写文件 将文件的内容写到txt中[/b][/size]
此处用启动一个线程的方式来写入文件,说白了就是继承Runnable接口的线程,然后在run方法里面写相关操作,最后通过一个main函数来执行即可。
[size=medium][b]2,读文件,将文件从txt读到内存中(非常简单,就是从文件中用缓冲流的方式读取)[/b][/size]
[size=medium][b]3.在txt结尾追加内容[/b][/size]
[b][color=red]方法一:[/color][/b]
[b][color=red] 方法二:[/color][/b]
此处用启动一个线程的方式来写入文件,说白了就是继承Runnable接口的线程,然后在run方法里面写相关操作,最后通过一个main函数来执行即可。
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
public class WriteTxt implements Runnable {
public void run(){
List<String> list=new ArrayList<String>();
list.add("屌丝");
list.add("高富帅");
list.add("白富美");
try {
FileWriter output = new FileWriter("D:\\test.txt" );
BufferedWriter bf= new BufferedWriter(output);
for(String l:list ){
bf.write(l+ "\r\n");
}
bf.flush();//此处很关键,如果不写该语句,是不能从缓冲区写到文件里的
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) {
WriteTxt rt= new WriteTxt();
Thread demo1= new Thread(rt);
demo1.start();
}
}
[size=medium][b]2,读文件,将文件从txt读到内存中(非常简单,就是从文件中用缓冲流的方式读取)[/b][/size]
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class ReadTxt {
public static void main(String[] args) {
try {
FileReader input = new FileReader("D:\\test.txt" );
BufferedReader br = new BufferedReader(input);
String text=null;
while (( text = br.readLine()) != null) {
System. out.println(text);
}
br.close();
input.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
[size=medium][b]3.在txt结尾追加内容[/b][/size]
[b][color=red]方法一:[/color][/b]
FileWriter output = new FileWriter("D:\\tag.txt" ,true);
BufferedWriter bf= new BufferedWriter(output);
bf.write( "http://zhan.renren.com/\r\n");
bf.flush();
[b][color=red] 方法二:[/color][/b]
RandomAccessFile randomFile = new RandomAccessFile(fileName, "rw");
// 文件长度,字节数
long fileLength = randomFile.length();
//将写文件指针移到文件尾。
randomFile.seek(fileLength);
randomFile.writeBytes("China");