【问题标题】:Split information directly from an URL直接从 URL 拆分信息
【发布时间】:2012-12-11 15:32:28
【问题描述】:

我想从airport file 的每一行中读取每个机场和相应的机场代码,然后用 [,] 分割该行,这样我就可以将所需的信息放入数据库中。

我怎样才能做到这一点?

【问题讨论】:

  • 我将 URL 下载到了一个 TXT 文件,然后我将整个文件作为字符串读入并尝试将其拆分。但我认为内容太大了。

标签: java url split


【解决方案1】:
  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

【讨论】:

    【解决方案2】:

    您可以使用Apache Commons CSV 来读取文件。看看这个帖子CSV parsing in Java - working example..?

    【讨论】:

      【解决方案3】:

      我在 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 here 中查看示例。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-08-22
        • 1970-01-01
        • 2019-02-28
        • 1970-01-01
        • 1970-01-01
        • 2011-12-10
        相关资源
        最近更新 更多