Java 解析多行文件
Ive可解析多行文件,结构如下:Java 解析多行文件,java,Java,Ive可解析多行文件,结构如下: Name Surname birthdate(int) Name Surname birthdate(int) 等等。我打开了文件,得到了一个ArrayList,并创建了一个用作数据结构的类,但我不知道如何解析每个字符串,识别它是数字还是名称。你能帮我吗?我想,这是最主要的问题: 我不知道如何解析每个字符串,识别它是否是一个数字 或者一个名字 使用isNumeric函数查看是否可以将值解析为数字或将其保留为字符串。然后根据函数返回的值对其进行解析 public
Name Surname
birthdate(int)
Name Surname
birthdate(int)
等等。我打开了文件,得到了一个ArrayList,并创建了一个用作数据结构的类,但我不知道如何解析每个字符串,识别它是数字还是名称。你能帮我吗?我想,这是最主要的问题: 我不知道如何解析每个字符串,识别它是否是一个数字 或者一个名字 使用isNumeric函数查看是否可以将值解析为数字或将其保留为字符串。然后根据函数返回的值对其进行解析
public static boolean isNumeric(String str) {
try {
double d = Double.parseDouble(str);
} catch(NumberFormatException nfe) {
return false;
}
return true;
}
您可以使用类来读取文件
如果您知道输入数据的结构,那么它有助手方法来读取各种类型的输入,我假设您知道它的结构
Scanner s = new Scanner(new File("input.txt"));
while(s.hasNext()) {
System.out.println("First Name : " + s.next() + ", Last Name : " + s.next() + ", Age : " +s.nextInt());
}
s.close();
下面是一个示例代码,可以帮助您从具有给定结构的文件中读取它
Scanner s = new Scanner(new File("input.txt"));
while(s.hasNext()) {
System.out.println("First Name : " + s.next() + ", Last Name : " + s.next() + ", Age : " +s.nextInt());
}
s.close();
您可以创建一个具有firstName、lastName和age属性的类,并将上述值指定给新对象,然后将该对象添加到列表中
希望这能有所帮助。该文件正好包含此内容,或者只是一个表示?这只是一个表示。姓名、姓氏和生日保留不同的姓名、姓氏和生日。使用正则表达式检查是否匹配,例如,如果表达式匹配,则birthdate\d+应捕获组中的数字,然后您只需解析它。此外,您知道文件的结构,因此必须提出解析逻辑。因为你的问题很模糊,所以很难帮助你。@Thomas-他的b-date是int-value。请出示代码