0
FileWriter를 사용하여 노트 프로그램을 만들었습니다. 긴 메모를 쓰지 않으면 메모가 한 줄에 저장된다는 것을 제외하고는 완벽하게 작동합니다. 프로그램이 특정 수의 문자 다음에 다음 줄에 쓸 수 있도록 할 수있는 방법이 있습니까? 이 내 코드입니다 :긴 문자열의 특정 문자 수 이후에 다음 줄에 쓸 FileWriter가 필요합니다.
import static javax.swing.JOptionPane.*;
import static java.lang.Integer.*;
import static java.lang.System.*;
import static java.lang.Double.*;
import static java.lang.Math.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.*;
import java.text.*;
import java.awt.*;
import java.io.*;
public class Note extends JFrame implements ActionListener {
JTextArea area;
JTextField title;
JLabel titleTxt, noteTxt;
JButton save, clear, exit;
FileWriter writer=null;
PrintWriter gen =null;
Scanner reader =null;
boolean append = true;
public static void main(String[] args) {
Note window = new Note();
window.setTitle("Note");
window.setLocationRelativeTo(null);
window.setDefaultCloseOperation(EXIT_ON_CLOSE);
window.createGUI();
window.setSize(300,250);
window.setResizable(false);
window.setVisible(true);
}
public void createGUI() {
setLayout (new FlowLayout());
titleTxt = new JLabel("Title:");
add(titleTxt);
title = new JTextField(30);
add(title);
noteTxt = new JLabel("Note:");
add(noteTxt);
area = new JTextArea(5,25);
area.setLineWrap(true);
area.setWrapStyleWord(true);
JScrollPane field = new JScrollPane(area);
add(field);
save = new JButton("Save");
save.addActionListener(this);
add(save);
clear = new JButton("Clear");
clear.addActionListener(this);
add(clear);
exit = new JButton("Exit");
exit.addActionListener(this);
add(exit);
}
public void actionPerformed(ActionEvent e){
if(e.getSource() == save){
Save();
area.setText("");
title.setText("");
}
else if(e.getSource() == clear){
area.setText("");
title.setText("");
}
else if(e.getSource() == exit){
System.exit(0);
}
}
private void Save(){
String date = new SimpleDateFormat("dd-MM-yyyy").format(Calendar.getInstance().getTime());
String timeStamp = new SimpleDateFormat("HH:mm:ss").format(Calendar.getInstance().getTime());
String outTxt = "Note is saved";
try{
//FileWriting
File file = new File(date+".txt");
writer = new FileWriter(file,append);
writer.write("Tid: "+timeStamp+"\r\n");
writer.write("\r\n");
writer.write(title.getText()+"\r\n");
writer.write("\r\n");
writer.write(area.getText()+"\r\n");
writer.write("\r\n");
writer.write("\r\n");
writer.close();
}
catch (FileNotFoundException e){
outTxt="File Not Found";
}
catch (Exception e){
outTxt="Error";
}
finally {
if (reader!=null)reader.close();
showMessageDialog(null, outTxt);
}
}
}
감사합니다. 단어가 char nr이면 단어가 잘리지 않도록 단어를 만드는 방법도 알고 있습니까? 47-52? – SlyTech404
@ SlyTech404 : 내 대답 업데이트를 참조하십시오. – npinti
"(. {50} [^] +) \ s +"의 "s"에 "불법 탈출 문자"오류가 표시됩니까? – SlyTech404