私はプロジェクトの株式市場データを収集しており、ここ数ヶ月間そうしています。しかし、数日前から、私がYahooからデータをダウンロードするために使ってきたURLConnectionは、変更を加えずに済み、それ以前に完全に機能していたにもかかわらず、nullになっています。 YahooからのURLは、私が読み込んでプリントアウトするcsvファイルをダウンロードします。URLは有効ですが、ブラウザに接続しても動作しますが、コードに接続するとURLConnectionはnullになります。他の株式を使ってみることも助けにはなりません。Java URLConnectionは有効なURLにnullを返します
private URL url = null;
private URLConnection urlConn = null;
private InputStreamReader inStream = null;
try {
//http://ichart.finance.yahoo.com/table.csv?s=^FTSE&d=3&e=18&f=2017&g=d&a=1&b=14&c=2017
this.url = new URL(urlStr);
System.out.println(url.toString());
this.urlConn = url.openConnection();
this.urlConn.connect();
//Start Reading
this.inStream = new InputStreamReader(this.urlConn.getInputStream());
BufferedReader buff= new BufferedReader(this.inStream);
System.out.println(buff.readLine());
}catch (MalformedURLException e) {
System.out.println(e.getMessage());
}catch(IOException e){
System.out.println(e.getMessage());
}
IOExceptionを例外に変更して、キャッチする例外がないかどうかを確認します。多分、403エラーです。 – Sedrick
'URLConnection'は* not * nullです。 'readLine()'は*を返す*、または例外がスローされています。正確にしてください。 – EJP