BufferedWriter 不写入文件
BufferedWriter do not write to a file
我正在尝试制作文本编辑器,但无法将内容保存到文本文件中:文件已创建但为空。
class Saver implements ActionListener{
public void actionPerformed(ActionEvent e){
try{
File file = new File("projekat");
if(!file.exists()){
file.createNewFile();
FileWriter fw = new FileWriter(file.getAbsoluteFile());
BufferedWriter bw = new BufferedWriter(fw);
bw.write(tekst1);
bw.close();
}
}
catch(IOException ex){
ex.printStackTrace();
}
}
}
JTextArea代码
area = new JTextArea(tekst1, 30,30);
tekst1 = area.getText();
请帮帮我。最好的问候
bw.write(tekst1);
此行将内容写入文件。
你很接近,你正在写的字符串只是空的,所以没有任何内容写入文件是正常的。
一些示例:
http://www.mkyong.com/java/how-to-write-to-file-in-java-bufferedwriter-example/
http://www.tutorialspoint.com/java/io/bufferedwriter_write_string.htm
http://beginnersbook.com/2014/01/how-to-write-to-file-in-java-using-bufferedwriter/
仅包含此代码:---
file.createNewFile();
在你的 if 语句中,把其他东西放在你的 if 之外。
问题是你需要调用tekst1 = area.getText();
再次在您的 actionPerformed
方法中更新 tekst1
.
的内容
class Saver implements ActionListener {
public void actionPerformed(ActionEvent e) {
try {
File file = new File("projekat");
if (!file.exists()) {
file.createNewFile();
FileWriter fw = new FileWriter(file.getAbsoluteFile());
BufferedWriter bw = new BufferedWriter(fw);
// get latest contents of the JTextArea
tekst1 = area.getText();
bw.write(tekst1);
bw.close();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
我正在尝试制作文本编辑器,但无法将内容保存到文本文件中:文件已创建但为空。
class Saver implements ActionListener{
public void actionPerformed(ActionEvent e){
try{
File file = new File("projekat");
if(!file.exists()){
file.createNewFile();
FileWriter fw = new FileWriter(file.getAbsoluteFile());
BufferedWriter bw = new BufferedWriter(fw);
bw.write(tekst1);
bw.close();
}
}
catch(IOException ex){
ex.printStackTrace();
}
}
}
JTextArea代码
area = new JTextArea(tekst1, 30,30);
tekst1 = area.getText();
请帮帮我。最好的问候
bw.write(tekst1);
此行将内容写入文件。
你很接近,你正在写的字符串只是空的,所以没有任何内容写入文件是正常的。
一些示例:
http://www.mkyong.com/java/how-to-write-to-file-in-java-bufferedwriter-example/
http://www.tutorialspoint.com/java/io/bufferedwriter_write_string.htm
http://beginnersbook.com/2014/01/how-to-write-to-file-in-java-using-bufferedwriter/
仅包含此代码:--- file.createNewFile(); 在你的 if 语句中,把其他东西放在你的 if 之外。
问题是你需要调用tekst1 = area.getText();
再次在您的 actionPerformed
方法中更新 tekst1
.
class Saver implements ActionListener {
public void actionPerformed(ActionEvent e) {
try {
File file = new File("projekat");
if (!file.exists()) {
file.createNewFile();
FileWriter fw = new FileWriter(file.getAbsoluteFile());
BufferedWriter bw = new BufferedWriter(fw);
// get latest contents of the JTextArea
tekst1 = area.getText();
bw.write(tekst1);
bw.close();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
}