gpt4 book ai didi

java - 如何用Java从文件中读取整数

转载 作者:行者123 更新时间:2023-12-02 05:10:03 24 4
gpt4 key购买 nike

好吧,我想读取文件中的整数和字符串。到目前为止,我已经有了这段代码,但我不断收到错误。我的文本文件中有这个:灰色:30黑色:40我试图读取字符串和整数,因为我想将整数设置为字符串(颜色)的点

while (strike!=3){  
Scanner name1 = new Scanner(System.in);
System.out.println("Enter A color");
String nameTaken = name1.next();

while(filechecker.hasNextLine()){
list.add(filechecker.nextLine());
}
String line =filechecker.nextLine();
String[] details = line.split(":");//checks for the integer next to the color
if((list.contains(nameTaken))&&(filechecker.hasNextInt())){
int points = Integer.parseInt(details[2]);
System.out.println("The Answer Exists!! You Got " +details[2]);

最佳答案

您没有指出您遇到的错误,但我可以从以下代码中看到,您可能会遇到 NullPointerException 或类似的错误。

编辑:您似乎收到了NoSuchElementException,因为没有剩余行可供读取。

此代码块循环遍历您的filechecker并将所有行读取到列表中,直到没有更多行为止。紧跟在 while block 后面的行尝试从中读取另一行,但它找不到该行,因为您已将它们全部读取(它将返回 null)。您尝试split的行将因此抛出异常。

while(filechecker.hasNextLine()){
list.add(filechecker.nextLine());
}
String line =filechecker.nextLine(); // <-- this line is throwing it. Don't use it here, use your list or do your work in the while loop instead.
String[] details = line.split(":");//checks for the integer next to the color

不要在 while 循环之后对 filechecker 进行操作,而是使用列表。或者更好的是,在 while 循环中完成所有工作。

关于java - 如何用Java从文件中读取整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27412744/

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