所以我得到了以下代码:
BufferedReader ind = new BufferedReader(new FileReader("Billet_priser.txt"));
String line = ind.readLine();
String[] bits = line.split(" "); // opdel i bidder efter mellemrum
line = ind.readLine();
bits = line.split(" ");
Ticket1 = Integer.parseInt(bits[1]);
line = ind.readLine();
line.split(" ");
Ticket2 = Integer.parseInt(bits[1]);
line = ind.readLine();
line.split(" ");
...
line = ind.readLine();
line.split(" ");
Ticketn = Integer.parseInt(bits[1]);
}
从 .txt 文件中读取以下文本:
Ticket1 99
Ticket2 35
...
Ticketn 60
尝试将每行中空格后的第二位存储在票证整数中。
问题是它只将第一个读取的int“99”存储到所有票整数中。 我希望它在将第一个 int 存储到第一张票证中后读取下一行,然后读取下一行,依此类推。
最佳答案
您继续使用此位
值来获取数字:
Ticket1 = Integer.parseInt(bits[1]);
但是你只从第一行开始设置它一次:
String[] bits = line.split(" ");
while (line != null) {
// bits is never updated in here
}
听起来您只想重复该行代码来更新 bits
变量:
line = ind.readLine();
bits = line.split(" ");
Ticket1 = Integer.parseInt(bits[1]);
(另请注意,您的循环没有多大意义,因为看起来您正在手动读取具有重复代码行的每一行,而不是实际循环。上面的三行代码,或构成循环一次迭代的任何内容,应该只存在一次。循环旨在一遍又一遍地重复该任务。)
关于java - 从 .txt 读取行并存储到不同的整数中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35707322/