如何解决如何从每条逗号分隔的行中读取前两个单词和后两个单词?
我有一个.txt文件,内容如下:
NO,6549,Kristiansund,N,Møre,og,Romsdal,08,1505,63.1101,7.7552
NO,6364,Vistdal,Molde,1506,62.7107,7.9319
NO,6365,6401,62.7371,7.0068,4
NO,6402,6403,8502,Narvik,Nordland,09,1806,68.4271,17.4349,8503,8504,4
我想从每一行的开头拾取前两个单词,然后我也想在每一行拾取最后两个单词。
我想从前两个单词开始:NO
,所有数字都以6
,6549
等和8
,8502
等开头。
但是从行尾我实际上需要纬度和经度,但是对于某些行,在行尾有4
。我不要他们。知道我该怎么做吗?我想创建对象,所以我有这个java对象类:
public class GeoData {
private String landskode;
private String postnummer;
private String latitude;
private String longitude;
}
以下是我到目前为止的代码:
try (BufferedReader br = new BufferedReader(new InputStreamReader(file.getInputStream()))) {
// TXT file delimiter
String DELIMITER = ",";
// read the file line by line
String line;
while ((line = br.readLine()) != null) {
// convert line into columns
String[] columns = line.split(DELIMITER);
// print all columns
System.out.println("GeoData["+ String.join(",",columns) +"]");
}
} catch (IOException ex) {
ex.printStackTrace();
}
解决方法
前两个应该只是columns[0]
和columns[1]
。然后,要检查最后一个字段是否为普通的“ 4”,可以使用columns[columns.length - 1].equals("4")
。取决于是真还是假,纬度/经度分别为columns[columns.length - 3]
和columns[columns.length - 2]
或columns[columns.length - 1]
和columns[columns.length - 2]
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。