Java 从网络读取 CSV 文件

Java read CSV file from the web

我正在尝试从网络上读取 CSV 文件。这是我编写的 Java 代码:

String st = "http://finance.yahoo.com/d/quotes.csv?s=NAK&f=sl1c1vd1t1p2hg&e=.csv";
URL stockURL = new URL(st);
BufferedReader in = new BufferedReader(new InputStreamReader(stockURL.openStream()));
String s = null;
while ((s=in.readLine())!=null) {
    System.out.println(s);
}

但是,BufferedReader 似乎是空的。当我将 URL 放入浏览器时,会下载一个 CSV 文件,该文件不是空文件。有任何想法吗?

服务器实际上发送了一个重定向到 http://download.finance.yahoo.com/d/quotes.csv?s=NAK&f=sl1c1vd1t1p2hg&e=.csv 的 301 响应。您的浏览器会遵循重定向,但您的代码不会。如果你直接使用最后的 URL,你的代码工作正常。