从java中的单行读取多个变量类型

时间:2016-10-24 18:28:12

标签: java

所以我必须阅读5个文件行,如下所示(在Java中):

111 westwood street, Trafford, PA; 100000; 3; 1; 2000
222 southside lane, Pittsburgh, PA; 200000; 4; 2; 1500

我必须输入由半冒号分隔的数据作为单个变量,即String address; int price;等

从文件中读取时,如何将addresspricenumbers of rooms等分成不同的数据类型?目标是构建一个对象列表,其中每个数据都作为构造函数参数。

感谢您的帮助

1 个答案:

答案 0 :(得分:1)

您可以按照其他人的建议使用CSV解析器。但是,如果你想自己做,这就是你可以做的:

您可以将每行读作String,然后使用split()方法将单个部分与行分开。最后使用像parseInt()这样的方法将它们转换为目标数据类型。以下是您可以执行的操作的示例:

String line = "", street;
String[] parts;
int price;
File file = new File("your_file");
Scanner input = new Scanner(file);
while (input.hasNextLine()) {
    line = input.nextLine();
    parts = line.split(";");
    street = parts[0];
    price = Integer.parseInt(parts[1]);
    ...
}
input.close();

当然,你必须适当地使用try-catch。