Я прошу мою JAVA программу, я имею дело со страницей входа. В моих кодах. У меня есть заправка методов чтения, чтобы получить список массивов. Затем в кнопке регистрации, как только я уже ввел данные, кстати, я использовал bufferedWriter, поэтому они будут добавлены в мой существующий файл .txt.
Тогда вот моя проблема , список массивов уже не обновляется, поскольку данные, помещенные в массив, находятся только в заправке, означает только с самого начала программы, что если у меня уже есть мой новые входные данные, они станут недействительными учетными данными в моем методе входа в систему. Я попытался скопировать мое заполнение в методе кнопки регистрации и метода частного класса, но все еще не работает, пожалуйста, помогите большое спасибо.
Вот мои коды для моего метода сканера:
private void initialize() throws FileNotFoundException {
String datas = "";
Scanner notePad = new Scanner(new File("loginData.txt"));
List<String> temps = new ArrayList<String>();
while (notePad.hasNext())
{
datas = notePad.next();
temps.add(datas);
}
notePad.close();
String[] dataFile = temps.toArray(new String[0]);
int mainCount = dataFile.length-1;
и коды кадров, включая мои кнопки. Переходя к методу кнопки регистрации, вот код.
JButton registerButton = new JButton("REGISTER");
registerButton.setFont(new Font("Arial", Font.BOLD, 12));
registerButton.addActionListener(new ActionListener() {
@SuppressWarnings("deprecation")
public void actionPerformed(ActionEvent e)
{
int countRegister = 0;
while (!registerEmail.getText().equalsIgnoreCase(dataFile[countRegister]) && mainCount >= countRegister)
{
countRegister = countRegister + 2;
if (mainCount < countRegister)
{
break;
}
}
if (mainCount <= countRegister) // No Existing Account
{
try {
FileWriter writer = new FileWriter("loginData.txt", true);
BufferedWriter bufferedWriter = new BufferedWriter(writer);
bufferedWriter.newLine();
bufferedWriter.write(registerEmail.getText());
bufferedWriter.newLine();
bufferedWriter.write(registerPassword.getText());
bufferedWriter.close();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
JOptionPane.showMessageDialog(frame, "Registered successfully, you can now login.", "Success", JOptionPane.INFORMATION_MESSAGE);
}
else
{
JOptionPane.showMessageDialog(frame, "Sorry, you have entered an existing account.", "Error", JOptionPane.ERROR_MESSAGE); // Existing Account
}
}
});
registerButton.setBounds(194, 502, 97, 23);
frmImma.getContentPane().add(registerButton);