gpt4 book ai didi

java - Java中读取文件时出现空值

转载 作者:行者123 更新时间:2023-12-01 07:05:45 24 4
gpt4 key购买 nike

所以,我正在尝试用java读取一个文件。该文件仅包含一行,并且是由星号分隔的一批设置。

计划是使用 .split 方法将它们解析为数组,并将每个数组索引分配给正确的变量。

不幸的是,虽然我的文件显然存在,但它的输出返回空值,这是不正确的。

这是我的代码:

try {
try {
/* Create and display the form */
Class.forName("com.mysql.jdbc.Driver").newInstance();
} catch ( InstantiationException | IllegalAccessException ex) {
Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE, null, ex);
}
Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE, "Loaded okay.");
} catch (ClassNotFoundException ex) {
Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE, null, ex);
}
java.awt.EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
new JFrame().setVisible(true);
}
});

String s = System.getenv("APPDATA");
File f = new File(s + "\\TinyboardMod\\settings.txt");
if(f.exists() && !f.isDirectory()) {
BufferedReader br = new BufferedReader(new FileReader(f));
String line;
while ((line = br.readLine()) != null) {
// process the line.
String settingsString = br.readLine();
Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE, settingsString);
//settings = settingsString.split("\\[");
}
br.close();


}

所以,控制台在记录器中显示 null,但是,如果文件不存在,它就不会那么远,所以问题出在这几行中,我只是没有看到它

最佳答案

这个

String settingsString = br.readLine();

应该是

String settingsString = line; // or just use line directly

否则,您将读取 while 循环条件中的一行和该语句中的另一行。

关于java - Java中读取文件时出现空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25276524/

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