이것은 내 코드입니다 .. 단추를 누를 때만 파일에 줄을 쓸 수 있지만, 다시 누르면 Characters의 새 집합 인 경우 이전의 문자 만 삭제하고 새로운 char 집합을 저장합니다. 나는 .. 다른 라인매번 파일에 문자열 줄을 쓰는 방법 "쓰기"단추를 누르십시오
당신은 생성자를 통해 추가 할FileWriter
를 설정해야
package datasaving;
import java.awt.HeadlessException;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import javax.swing.*;
public class Datasaving {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
JPanel panel = new JPanel();
JFrame frame = new JFrame();
final JTextField input = new javax.swing.JTextField(20);
JButton save = new javax.swing.JButton("Write");
frame.add(panel);
frame.setSize(200,200);
panel.add(input);
panel.add(save);
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.setVisible(true);
save.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
File file = new File("data.dat");
try {
try (FileWriter writer = new FileWriter(file)) {
writer.write(input.getText()+"\n");
}
System.out.println("Game saved");
} catch (IOException | HeadlessException z) {
JOptionPane.showMessageDialog(null, e);
}
}
});
}
}
'FileWriter'의 생성자는 덮어 쓰는 대신 ** append **에 사용할 수있는 두 번째 매개 변수 인'boolean append'를 허용합니다. 기본적으로,'FileWriter writer = new FileWriter (file, true)'를 사용하십시오. – Aziz