题目是这样的:写一个简单程序,读取一个文件,每次读取一行,生成另一个文件.我是这样写的:
package han;import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStreamReader;
import java.io.PrintWriter;public class Test8 {
public static void main(String[] args)throws Exception {
FileOutputStream out=new FileOutputStream("E:\\1.txt");
PrintWriter writer=new PrintWriter(out);
writer.println("床前明月光");
writer.println("疑是地上霜");
writer.println("举头望明月");
writer.println("低头思故乡");
FileInputStream in=new FileInputStream("E:\\1.txt");
InputStreamReader reader=new InputStreamReader(in);
BufferedReader buffered=new BufferedReader(reader);
String br=buffered.readLine();
while(br!=null){
FileOutputStream out1=new FileOutputStream("E:\\2.txt");
PrintWriter writer1=new PrintWriter(out);
writer1.println(br);
br=buffered.readLine();
}
}}
运行了一下,发现生成1.txt,但里面没内容。2.txt没生成!我不知道错在哪?请高手指导一下!谢谢!
package han;import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStreamReader;
import java.io.PrintWriter;public class Test8 {
public static void main(String[] args)throws Exception {
FileOutputStream out=new FileOutputStream("E:\\1.txt");
PrintWriter writer=new PrintWriter(out);
writer.println("床前明月光");
writer.println("疑是地上霜");
writer.println("举头望明月");
writer.println("低头思故乡");
FileInputStream in=new FileInputStream("E:\\1.txt");
InputStreamReader reader=new InputStreamReader(in);
BufferedReader buffered=new BufferedReader(reader);
String br=buffered.readLine();
while(br!=null){
FileOutputStream out1=new FileOutputStream("E:\\2.txt");
PrintWriter writer1=new PrintWriter(out);
writer1.println(br);
br=buffered.readLine();
}
}}
运行了一下,发现生成1.txt,但里面没内容。2.txt没生成!我不知道错在哪?请高手指导一下!谢谢!
解决方案 »
- 矩阵旋转的问题
- list里存放的是什么?
- Map的问题?或者是List?传址?有点复杂。
- java 程序打包后出现:javax.comm.NoSuchPortException
- 编写java手机游戏的思路 大家看下对不对
- 一个JAVA基础题目
- 急求《JAVA实例技术手册 第二版》光盘中的实例代码!
- 急急急!!!!Io 异常: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=135294976)(ERR=12505)(ERROR_STACK=(ERROR=(CODE=12505)(EMFI=4))))
- Java中JTable、JTableHeader显示问题
- 这段连接数据库的代码为什么会有SQLException异常?
- 对中文分词程序运行错误的疑惑,希望能解决
- 循环try catch finally 语句问题,谁人能解?
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStreamReader;
import java.io.PrintWriter;public class Testa { public static void main(String[] args) throws Exception {
FileOutputStream out = new FileOutputStream("E:\\1.txt");
PrintWriter writer = new PrintWriter(out);
writer.println("床前明月光");
writer.println("疑是地上霜");
writer.println("举头望明月");
writer.println("低头思故乡");
writer.flush();
FileInputStream in = new FileInputStream("E:\\1.txt");
InputStreamReader reader = new InputStreamReader(in);
BufferedReader buffered = new BufferedReader(reader);
String br = null;
int i = 1;
while ((br = buffered.readLine()) != null) {
i++;
FileOutputStream out1 = new FileOutputStream("E:\\" + i + ".txt");
PrintWriter writer1 = new PrintWriter(out1); //这里lz写成了out writer1.println(br);
writer1.flush(); //这里需要flush一下
} }}
writer.flush();
writer.close();将:FileOutputStream out1=new FileOutputStream("E:\\2.txt");
PrintWriter writer1=new PrintWriter(out1 );
移到:while(br!=null){ 之前,循环的外面.最后再加上
writer1.flush();
writer1.close();
FileOutputStream out = new FileOutputStream("E:\\1.txt");
PrintWriter writer = new PrintWriter(out);
writer.println("床前明月光");
writer.println("疑是地上霜");
writer.println("举头望明月");
writer.println("低头思故乡");
writer.close();
out.close();
FileInputStream in = new FileInputStream("E:\\1.txt");
InputStreamReader reader = new InputStreamReader(in);
BufferedReader buffered = new BufferedReader(reader);
String br = null;
FileOutputStream out1 = new FileOutputStream("E:\\2.txt");
PrintWriter writer1 = new PrintWriter(out1);
while ((br = buffered.readLine()) != null) {
writer1.println(br);
}
writer1.close();
out1.close();
buffered.close();
reader.close();
in.close();
}
writer1.flush();
writer1.close();
必须关闭流