import java.io.*;public class writeFile {
public static void main(String[] args)throws IOException {
BufferedWriter buf=new BufferedWriter(new FileWriter("test.txt"));
buf.write("写入一个字符串\n");
BufferedReader in=new BufferedReader(new FileReader("test.txt"));
System.out.print(in.readLine());
in.close();
buf.close();
}
}为什么程序的运行结果总是为:null,读不出来文件中的内容?
public static void main(String[] args)throws IOException {
BufferedWriter buf=new BufferedWriter(new FileWriter("test.txt"));
buf.write("写入一个字符串\n");
BufferedReader in=new BufferedReader(new FileReader("test.txt"));
System.out.print(in.readLine());
in.close();
buf.close();
}
}为什么程序的运行结果总是为:null,读不出来文件中的内容?
public static void main(String[] args)throws IOException {
BufferedWriter buf=new BufferedWriter(new FileWriter("test.txt"));
buf.write("写入一个字符串\n"); BufferedReader in=new BufferedReader(new FileReader("test.txt"));
String str= in.readLine(); System.out.print(str); in.close();
buf.close();
}
}
其实你这样写只能读取一行要是多行就要用循环了为什么程序的运行结果总是为:null,读不出来文件中的内容?
BufferedWriter buf=new BufferedWriter(new FileWriter("test.txt"));
buf.write("写入一个字符串\n");
你没有flush(),里面什么都没,加上buf.fluse()或buf.close()
import java.io.*;public class WriteFile {
public static void main(String[] args)throws IOException{
BufferedWriter bw = new BufferedWriter(new FileWriter("aaa.txt"));
bw.write("aaaaaaaaaaaa/r/n");
bw.close();
BufferedReader br = new BufferedReader(new FileReader("aaa.txt"));
String s = br.readLine();
br.close();
System.out.println(s);
}
}
当程序看见
buf.close();
时候才会写入文件中内容而程序却先执行了
in.close();
也就是先读取 后写入了
在读取的时候test.txt中是空的
所以才会出现你说的那种情况:
这样就好了 public static void main(String[] args)throws IOException {
BufferedWriter buf=new BufferedWriter(new FileWriter("E:/test.txt"));
buf.write("写入一个字符串\n");
buf.close();
BufferedReader in=new BufferedReader(new FileReader("E:/test.txt")); System.out.print(in.readLine());
in.close();
}
import java.io.*; public class writeFile {
public static void main(String[] args)throws IOException {
BufferedWriter buf=new BufferedWriter(new FileWriter("test.txt")); buf.write("写入一个字符串\n");
buf.close();//这就是你错误的原因,你没有关闭这个流BufferedReader in=new BufferedReader(new FileReader("test.txt")); System.out.print(in.readLine()); in.close();
buf.close();
}
}
public static void main(String[] args)throws IOException {
BufferedWriter buf=new BufferedWriter(new FileWriter("test.txt"));
buf.write("写入一个字符串\n");
buf.close();BufferedReader in=new BufferedReader(new FileReader("test.txt"));
System.out.print(in.readLine()); in.close();
//buf.close();
}
}