gpt4 book ai didi

java - 如何编辑java文本文件中的记录?

转载 作者:行者123 更新时间:2023-12-01 10:59:34 24 4
gpt4 key购买 nike

我有一个简单的问题

我有一个java文本文件,其中有这样的记录:

Hamada 115599
Johny 1478523
Bosy 753621

这个文本文件定义了java程序中许多帐户的用户名和密码。

我编写了一个简单的代码来编辑用户帐户的密码。

System.out.println("Change Account Password");
System.out.printf("Username: ");
String user4 = input.next();
System.out.printf("Password: ");
int pass4 = input.nextInt();
boolean checkaccount = false;
Scanner x = null;
try {
x = new Scanner(new File("C:\\Users\\فاطمة\\Downloads\\accounts.txt"));
while (x.hasNext()) {
String a = x.next();
int b = x.nextInt();
if ((a == null ? user4 == null : a.equals(user4)) && pass4 == b) checkaccount = true;
}
if (checkaccount) {
int newpass = 0;
boolean checked = true;

File f = new File("C:\\Users\\فاطمة\\Downloads\\accounts.txt");
File tempFile2 = new File("C:\\Users\\فاطمة\\Downloads\\accounts2.txt");
BufferedWriter writer2 = new BufferedWriter(new FileWriter(tempFile2));

Scanner sc = new Scanner(f);

Scanner sc2 = new Scanner(System. in );

int foo = Integer.parseInt(user4);

while (sc.hasNext()) {
String currentLine1 = sc.nextLine();
String[] tokens = currentLine1.split(" ");
if (Integer.valueOf(tokens[0]) == foo && checked) {
sc2.nextLine();
System.out.printf("New Password: ");
newpass = sc2.nextInt();
currentLine1 = tokens[0] + " " + newpass;
checked = false;
}
writer2.write(currentLine1 + System.getProperty("line.separator"));
}
writer2.close();
sc.close();
f.delete();
boolean successfull1 = tempFile2.renameTo(f);
if (successfull1 == true) System.out.println("Password changed successfully.");
else System.out.println("Error occurred during changing password.");
} else System.out.println("Wrong username or password... try again !!");
} catch (Exception e) {}

首先,程序检查帐户是否存在,如果存在,则程序允许用户更改密码,但是当我运行此代码时没有任何反应,并且不向我显示“新密码:”的输出语句

这段代码有什么问题?

最佳答案

如果您在这里遇到异常 - 不要只是将其吞入代码中。至少用以下内容替换最后一行:

catch (Exception e) {
e.printStackTrace()
}

您将更好地了解正在发生的事情。

关于java - 如何编辑java文本文件中的记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33442194/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com