gpt4 book ai didi

java - 扫描仪扫描第一行,仅扫描第二行的第一个输入

转载 作者:行者123 更新时间:2023-12-02 02:46:48 25 4
gpt4 key购买 nike

我正在创建这段代码,其中扫描仪应该扫描文本文件中的每个单词,然后继续将每个单词保存在特定的数组中。但每次扫描仪开始扫描时,它只会到达下一行并在第一个单词处停止。我不知道到底是什么原因造成的。我使用分隔符来分隔逗号“,”之间的单词。

这是一段代码:

package ex13a;
import java.util.Scanner;
import java.io.*;
/**
*
* @author Work
*/
public class Ex13a {
static Scanner scan = new Scanner(System.in);
static int[] number = new int[100];
static String[] f_users = new String[100];
static String[] l_users = new String[100];
static String[] passwd = new String[100];
static int i = 0;
static String fullName;

/**
* @param args the command line arguments
* @throws java.io.IOException
*/
public static void main(String[] args) throws IOException {
String path = "C:\\Users\\Work\\Desktop\\users.txt";
File inFile = new File(path);
Scanner inPut = new Scanner(inFile).useDelimiter(",");
Scanner inPut2 = new Scanner(inFile);
while(inPut.hasNext()){
System.out.println(number[i] = inPut.nextInt());
System.out.println(f_users[i] = inPut.next());
System.out.println(l_users[i] = inPut.next());
System.out.println(passwd[i] = inPut.next());

i++;

}

它向我抛出了错误:

1
Ahmed
Dhaif
asdf56
Exception in thread "main" java.util.InputMismatchException
2
at java.util.Scanner.throwFor(Scanner.java:864)
at java.util.Scanner.next(Scanner.java:1485)
at java.util.Scanner.nextInt(Scanner.java:2117)
at java.util.Scanner.nextInt(Scanner.java:2076)
at ex13a.Ex13a.main(Ex13a.java:32)
C:\Users\Work\AppData\Local\NetBeans\Cache\8.2\executor-snippets\run.xml:53: Java returned: 1
BUILD FAILED (total time: 0 seconds)

最佳答案

逐行抓取,然后将逗号周围的行分割,然后解析返回的字符串。

Scanner inPut = new Scanner(inFile);
while(inPut.hasNextLine()){
String [] data = inPut.nextLine().split(",");
System.out.println(Integer.parseInt(data[0]));
number[i] = Integer.parseInt(data[0]); //to add to your arrays
System.out.println(Integer.parseInt(data[1]));
System.out.println(Integer.parseInt(data[2]));
System.out.println(Integer.parseInt(data[3]));
i++;
}

请注意,您应该检查数组的大小是否正确,并且字符串实际上是整数。你应该能够做到这一点。但这应该可以帮助您入门。

如果要将值存储在数据结构中,请使用动态的数据结构,而不是像数组这样的固定长度的数据结构。

关于java - 扫描仪扫描第一行,仅扫描第二行的第一个输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44447023/

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