在一个java Project中,我想向处于同一目录下的文件写入数据。结果没有成功,不知为何。 请大家帮我看看,指点下 谢谢
下面是我的源文件的一部分。try {
File file2 = new File("cmm.txt"); 这个cmm.txt文件与本程序处在同一个目录下。
System.out.println(file2.getAbsolutePath());
FileWriter fw = new FileWriter(file2);
BufferedWriter bw = new BufferedWriter(fw);
String s;
//下面使用BufferedWriter向cmm.txt中写入数据。 结果却没有成功,cmm.txt的内容没有任何改变。 请教是什么原因?
s = br.readLine();
while (s != null) {
bw.write(s);
bw.newLine();
s = br.readLine();
}
in1 = new FileInputStream(file2);
this.inputComplete.setEnabled(false);
} catch (FileNotFoundException ex) {
this.jTextArea2.setText("file not found");
Logger.getLogger(CmmView.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException e) {
e.printStackTrace();
}
下面是我的源文件的一部分。try {
File file2 = new File("cmm.txt"); 这个cmm.txt文件与本程序处在同一个目录下。
System.out.println(file2.getAbsolutePath());
FileWriter fw = new FileWriter(file2);
BufferedWriter bw = new BufferedWriter(fw);
String s;
//下面使用BufferedWriter向cmm.txt中写入数据。 结果却没有成功,cmm.txt的内容没有任何改变。 请教是什么原因?
s = br.readLine();
while (s != null) {
bw.write(s);
bw.newLine();
s = br.readLine();
}
in1 = new FileInputStream(file2);
this.inputComplete.setEnabled(false);
} catch (FileNotFoundException ex) {
this.jTextArea2.setText("file not found");
Logger.getLogger(CmmView.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException e) {
e.printStackTrace();
}
s = br.readLine();
while (s != null) {
bw.write("for test");
System.out.println(s);//用此测试,在后台可以看到内容打印出来了,但是没能写入到文件中去
bw.write(s);
bw.newLine();
s = br.readLine();
} 我用BufferedWriter直接向cmm.txt写数据,也没有用。
FileWriter fw = new FileWriter(file2);
BufferedWriter bw = new BufferedWriter(fw);
bw.write("fortest");
结果cmm.txt中没有写入 “fortest".
会不会是IDE的问题呢? 我用的是netbeans
还试了下用 file2.getAbsoluteFile(),也同样无效。
痛苦。。
try {
File file2 = new File("cmm.txt");
File file3 = file2.getAbsoluteFile();
FileWriter fw = new FileWriter(file3);
BufferedWriter bw = new BufferedWriter(fw);
bw.write("fortest");
bw.flush(); 这个是测试下用的
String s;
s = br.readLine();
while (s != null) {
bw.write("for test");
System.out.println(s);
bw.write(s);
bw.flush();
bw.newLine();
s = br.readLine();
}
in1 = new FileInputStream(file2);
this.inputComplete.setEnabled(false);
} catch (FileNotFoundException ex) {
this.jTextArea2.setText("file not found");
Logger.getLogger(CmmView.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException e) {
e.printStackTrace();
}
比较正常的代码如下:
文件还是没有看到改变,但写入应该是成功了。因为我后面的程序要从其中读数据,结果读成功了。
try {
File file2 = new File("cmm.txt");
File file3 = file2.getAbsoluteFile();
FileWriter fw = new FileWriter(file2);
BufferedWriter bw = new BufferedWriter(fw);
bw.flush();
String s;
s = br.readLine();
while (s != null) {
System.out.println(s);
bw.write(s);
bw.flush();
bw.newLine();
s = br.readLine();
}
in1 = new FileInputStream(file2);//后面要用到这个文件中的内容
this.inputComplete.setEnabled(false);
} catch (FileNotFoundException ex) {
this.jTextArea2.setText("file not found");
Logger.getLogger(CmmView.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException e) {
e.printStackTrace();
}
谢谢各位了
吃了亏以后就记得了~