我想从这个机场文件的每一行中读取每个机场和相应的机场代码,然后用 [,] 分割该行,这样我就可以将所需的信息放入数据库中。
我怎样才能做到这一点?
LineNumberReader lnr = new LineNumberReader( new InputStreamReader(new URL( "http://..." ).openStream()) );
String readLine = lnr.readLine();
do {
String[] split = readLine.split(",");
for( String col : split )
{
// Write to DB
System.out.println(col);
}
readLine = lnr.readLine();
} while (readLine!=null)
您可能想要使用 CSV 阅读库,例如OpenCSV
您可以使用Apache Commons CSV来读取文件。看看这篇文章CSV parsing in Java - working example..?.
我在 ideone 中编写了一个小示例,向您展示如何从给定的流中逐行读取,然后用逗号分隔行:
这是代码:
import java.util.*;
import java.lang.*;
class Main
{
public static void main (String[] args) throws java.lang.Exception
{
String temp;
Scanner sc = new Scanner(System.in);
while(sc.hasNextLine()) {
temp = sc.nextLine();
String[] strs = temp.split(",");
for (int i = 0; i < strs.length; ++i) {
System.out.println(strs[i]);
}
System.out.println("===========================================");
}
}
}
我不是故意解决整个问题,所以也有一些想法留给你。此外,我有意使示例尽可能简单,以便更容易理解。
您可以在 ideone 中看到一个示例。