1
對不起,如果這個問題已經問過,但我試圖找到這個,我沒有得到任何符合我的問題。我的問題是如何驗證登錄數據基於.txt文件在Java gui(我使用netbeans)。 我有2個jFrame,第一個是MainMenu框架和註冊框架,我卡在MainMenu。在註冊類中將數據保存到.txt文件中沒有問題。這裏.txt文件的 樣本:如何在基於gui的文本文件驗證登錄數據
名稱:Gifhary年齡:20金額:2000帳號:1234密碼:布拉布拉
文件名是基於帳戶沒有。
這是我的註冊碼
package banksimulator;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import javax.swing.JOptionPane;
public class Registration extends javax.swing.JFrame {
static ArrayList name = new ArrayList();
static ArrayList age = new ArrayList();
static ArrayList amount = new ArrayList();
static ArrayList accountNo = new ArrayList();
static ArrayList password = new ArrayList();
/**
* Creates new form Registration
*/
public Registration() {
initComponents();
this.setLocationRelativeTo(null);
private void saveBtnActionPerformed(java.awt.event.ActionEvent evt) {
String content = "Name: "+txtName.getText()+" Age: "+txtAge.getText()+" Amount: "+txtAmount.getText()+" Account No: "+txtAccountNo.getText()+" Password: "+txtPassword.getText();
try {
File file = new File("src/banksimulator/Registration/"+txtAccountNo.getText()+".txt");
if (!file.exists()) {
file.createNewFile();
FileWriter data = new FileWriter(file.getAbsoluteFile());
BufferedWriter bw = new BufferedWriter(data);
bw.write(content);
bw.close();
JOptionPane.showMessageDialog(this, "Data Is Saved");
txtName.setText("");
txtAge.setText("");
txtAmount.setText("");
txtAccountNo.setText("");
txtPassword.setText("");
}
else {
JOptionPane.showMessageDialog(this, "Account Number Is Already Used");
txtAccountNo.setText("");
}
} catch (IOException e) {
}
// TODO add your handling code here:
}
private void cancelBtnActionPerformed(java.awt.event.ActionEvent evt) {
this.dispose();
MainMenu m = new MainMenu();
m.setVisible(true);
// TODO add your handling code here:
}
我跳過「生成代碼」
一些默認代碼,這是MainMenu的
package banksimulator;
import java.io.*;
import javax.swing.*;
/**
*
* @author Qodri
*/
public class MainMenu extends javax.swing.JFrame {
/**
* Creates new form MainMenu
*/
public MainMenu() {
initComponents();
this.setLocationRelativeTo(null);
}
private void registrationBtnActionPerformed(java.awt.event.ActionEvent evt) {
this.dispose();
Registration r = new Registration();
r.setVisible(true);
// TODO add your handling code here:
}
private void logInBtnActionPerformed(java.awt.event.ActionEvent evt) {
String account = txtAccountNo.getText();
String password = txtPassword.getText();
//My problem is here
// TODO add your handling code here:
}
數據需要MainMenu的是帳號和密碼 如果有人能幫助我,請。非常感謝你
謝謝@ user1092688 但是,當我建立GUI成。 jar 它不會將數據保存到.txt文件 我已經通過查看帶有winRar的.jar文件來更改目標文件夾以保存.txt文件,在.jar文件中只有2個文件夾存在,banksimulator和META-INF 在第一個文件夾的目的地是(仍然由netbeans打開)「BankSimulator/sr 「/ modelsimulator/Registration /」 在.jar文件中是「banksimulator/Registration /」 –
那是因爲你用'src/banksimulator/...'指定了一個**相對路徑**,你可以指定一個**絕對如果你想保存到絕對位置,路徑**即'C:\\ Users \\ Gifhary \\ Desktop'。如果要保存到.jar的當前位置,可以使用[此技術](http://stackoverflow.com/a/7603444/1092688) –