|
|
|
ช่วยหน่อยคะ รับค่าจาก Java GUI แล้ว save ข้อมูลลง .txt แบบไม่ลบของเก่าทำไงอะคะ |
|
|
|
|
|
|
|
อันนี้ โค้ดหน้าเมนูคะ เมื่อกดเพิ่มข้อมูล จะไปหน้าเมนู เพิ่มข้อมูล ค่าใช้จ่ายต่อวัน
แล้วบันทึกลง .txt แต่ตอนนี้ทำได้แค่บันทึกแล้วพอบันทึกข้อมูลใหม่มันก็ลบของเก่าคะ ช่วยหน่อยนะคะ
ลองหลายวิธีแล้ว
Code (Java)
import java.awt.*;
import javax.swing.*;
import java.io.*;
import java.awt.event.*;
class sum1{
String id;
double pb,pf,ps;
}
public class MainWindow extends JFrame {
float pt,pb,pf,ps;
JPanel panel;
JLabel l1;
JButton addbtn, calbtn, showbtn,closebtn;
Font fn = new Font("Angsana New", Font.BOLD, 20);
Font fn1 = new Font("Angsana New", Font.BOLD, 30);
AddPanel x;
public MainWindow() {
setTitle("หน้าหลัก");
setSize(320, 250);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
buildPanel();
add(panel);
setVisible(true);
}
private void buildPanel() {
l1 = new JLabel("โปรแกรมจัดการข้อมูลค่าใช้จ่าย",SwingConstants.CENTER);
Icon ani4 = new ImageIcon("i4.jpg");
Icon ani2 = new ImageIcon("i2.jpg");
Icon ani3 = new ImageIcon("i3.jpg");
Icon ani5 = new ImageIcon("i5.jpg");
addbtn = new JButton(" รับข้อมูลค่าใช้จ่าย ",ani2);
calbtn = new JButton(" คำนวณค่าใช้จ่าย ",ani4);
showbtn = new JButton(" แสดงค่าใช้จ่าย ",ani5);
closebtn = new JButton(" ปิดโปรแกรม ",ani3);
l1.setFont(fn1);
l1.setForeground(Color.BLUE);
addbtn.setFont(fn);
calbtn.setFont(fn);
showbtn.setFont(fn);
closebtn.setFont(fn);
addbtn.addActionListener(new ButtonListener());
calbtn.addActionListener(new ButtonListener());
showbtn.addActionListener(new ButtonListener());
closebtn.addActionListener(new ButtonListener());
panel = new JPanel();
panel.setLayout(new GridBagLayout());
panel.setBackground(Color.WHITE);
x = new AddPanel();
x.addItem(panel,l1,1,0,1,1,GridBagConstraints.CENTER);
x.addItem(panel,addbtn,1,2,1,1,GridBagConstraints.CENTER);
x.addItem(panel,calbtn,1,3,1,1,GridBagConstraints.CENTER);
x.addItem(panel,showbtn,1,4,1,1,GridBagConstraints.CENTER);
x.addItem(panel,closebtn,1,5,1,1,GridBagConstraints.CENTER);
}
private class ButtonListener implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource()==addbtn) { //เพิ่มสินค้า
Adddata a = new Adddata();
a.setSize(400, 350);
a.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); //DISPOSE ให้ปิดหน้าจอปัจจุบันแล้วกลับมาหน้าจอปัจจุบัน
}
if (e.getSource()==calbtn) {//คำนวณ
}
if (e.getSource()==showbtn) {//แสดง
}
if(e.getSource()==closebtn) { //ปิดโปรแกรม
System.exit(0);
}
}
}
public static void main(String[] args) {
MainWindow m = new MainWindow();
m.setSize(500, 350);
m.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //EXIT ออกจากโปรแกรม
m.setVisible(true);
}
}
Code (Java)
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.io.*;
import java.text.DecimalFormat;
public class Adddata extends JFrame {
JPanel panel;
JLabel sumbook,sumfood,sum,time,l1;
JTextField btxt,ftxt,stxt,ttxt;
JButton bacbtn, savebtn, resetbtn;
Font fn = new Font("Angsana New", Font.BOLD, 30);
Font fn1 = new Font("Angsana New", Font.BOLD, 20);
AddPanel y;
public Adddata() {
setTitle("รับข้อมูลค่าใช้จ่าย");
buildPanel();
add(panel);
setVisible(true);
}
private void buildPanel() {
l1 = new JLabel("รับข้อมูลค่าใช้จ่าย",SwingConstants.CENTER);
l1.setForeground(Color.BLUE);
time = new JLabel("รับข้อมูลวันที่บันทึก");
sumbook = new JLabel("ค่าหนังสือ");
sumfood = new JLabel("ค่าอาหาร");
sum = new JLabel("ค่าใช้จ่ายอื่นๆ");
btxt = new JTextField(15);
ftxt = new JTextField(15);
stxt = new JTextField(15);
ttxt = new JTextField(15);
bacbtn = new JButton("ย้อนกลับ");
savebtn = new JButton("บันทึก");
resetbtn = new JButton("รีเซท");
l1.setFont(fn);
time.setFont(fn1);
sumbook.setFont(fn1);
sumfood.setFont(fn1);
sum.setFont(fn1);
bacbtn.setFont(fn1);
savebtn.setFont(fn1);
resetbtn.setFont(fn1);
panel = new JPanel();
panel.setLayout (new GridBagLayout ());
y = new AddPanel();
y.addItem(panel,l1,0,0,1,1,GridBagConstraints.CENTER);
y.addItem(panel,time,0,1,1,1,GridBagConstraints.WEST);
y.addItem(panel,ttxt,1,1,2,1,GridBagConstraints.EAST);
y.addItem(panel,sumbook,0,2,1,1,GridBagConstraints.WEST);
y.addItem(panel,btxt,1,2,2,1,GridBagConstraints.EAST);
y.addItem(panel,sumfood,0,3,1,1,GridBagConstraints.WEST);
y.addItem(panel,ftxt,1,3,2,1,GridBagConstraints.EAST);
y.addItem(panel,sum,0,4,1,1,GridBagConstraints.WEST);
y.addItem(panel,stxt,1,4,2,1,GridBagConstraints.EAST);
y.addItem(panel,bacbtn,0,5,1,1,GridBagConstraints.WEST);
y.addItem(panel,savebtn,1,5,1,1,GridBagConstraints.WEST);
y.addItem(panel,resetbtn,2,5,1,1,GridBagConstraints.WEST);
bacbtn.addActionListener(new ButtonListener());
resetbtn.addActionListener(new ButtonListener());
savebtn.addActionListener(new ButtonListener());
}
private class ButtonListener implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource()==bacbtn) {
dispose();
}
if (e.getSource()==savebtn) {
String sid =ttxt.getText();
String sb =btxt.getText();
String sf =ftxt.getText();
String ss =stxt.getText();
File ofile = new File("d:\\data.txt");
FileWriter f_write = null;
BufferedWriter b_write = null;
PrintWriter p_write = null;
String line;
try{
f_write = new FileWriter(ofile);
b_write = new BufferedWriter(f_write);
p_write = new PrintWriter(b_write);
p_write.println(sid+sb+sf+ss);
}
catch (IOException ee) {
}
finally {
p_write.close();
}
JOptionPane.showMessageDialog(null, "Save data completed");
}
if (e.getSource()==resetbtn) {
ttxt.setText("");
btxt.setText("");
ftxt.setText("");
stxt.setText("");
ttxt.requestFocus();
}
}
}
}
Tag : Java, JavaScript, JAVA
|
|
|
|
|
|
Date :
2013-09-26 20:57:13 |
By :
สาวน้อยดาวศุกร์ |
View :
2047 |
Reply :
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ช่วยหน่อยนะคะ ขอร้องง
|
|
|
|
|
Date :
2013-09-26 22:36:27 |
By :
สาวน้อยดาวศุกร์ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่ใช้การเก็บชื่อไฟล์เป็นวันที่ล่ะครับ จะได้เก็บวันต่อวัน
|
|
|
|
|
Date :
2013-09-27 10:30:49 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|