我正在尝试创建一个登录屏幕,该屏幕可以从文本文件中读取用户名和密码。我已经建立了注册页面,该页面通过执行以下命令将用户名和密码输出到文件:
try (BufferedWriter out = new BufferedWriter(fstream)) {
try {
out.write(username + " " + password);
out.newLine();
JOptionPane.showMessageDialog(null,"User Account '" + username + "' Created");
} catch (IOException ex) {
Logger.getLogger(ServerMenu.class.getName()).log(Level.SEVERE, null, ex);
}
}
文本文件将如下所示:
user1 password1
user2 password2
我一直在阅读大量文档以尝试弄清楚这一点,但是阅读的次数越多,我就会感到困惑。我这样做的原因是,我可以继续读取和写入.dat文件以获取系统最终将保留的信息。
如果有人能以任何形式帮助我,那将是惊人的!
谢谢
C
最佳答案
快速简便的解决方案。每行都有评论,但如果您需要任何帮助或有任何疑问,请告知。
import java.io.*;
class FileRead
{
public static boolean main(String lineToCompare)
{
try{
// Open the file that is the first
// command line parameter
FileInputStream fstream = new FileInputStream("textfile.txt");
// Get the object of DataInputStream
DataInputStream in = new DataInputStream(fstream);
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String strLine;
//Read File Line By Line
while ((strLine = br.readLine()) != null) {
//Compare the line with the line to compare (string)
if(strLine.compareTo(lineToCompare) == 0)
return true;
}
//Close the input stream
in.close();
}catch (Exception e){//Catch exception if any
System.err.println("Error: " + e.getMessage());
}
return false;
}
}
关于java - 在文本文档中搜索行-JAVA,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10200909/