0

Java を使用して Web サイトの HTML コンテンツを受け取ります。しかし、すべてのコンテンツを受信することはできません。時々、「...」で終わるコンテンツを受け取りますが、コンテンツの終わりではありません。エラーとは何か教えてください。以下は私のコードです:

public static String requestHtmlContent(String sUrl){
        URL url;
        URLConnection connection;
        StringBuilder strBuilder = new StringBuilder();
        BufferedReader reader;
        try {
            url = new URL( sUrl );
            connection = url.openConnection();
            connection.setRequestProperty("User-Agent", "Mozilla/6.0 (Windows NT 6.2; WOW64; rv:16.0.1) Gecko/20121011 Firefox/16.0.1");
            InputStream is = url.openConnection().getInputStream();
            reader = new BufferedReader( new InputStreamReader( is )  );

            String line = null;
            while((line = reader.readLine())!= null);  {
                line = reader.readLine();
                strBuilder.append(line +"\n");
            }
            reader.close();

            return strBuilder.toString();

        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return strBuilder.toString();
    }
4

1 に答える 1

3

whileコードを実際にテストしなくても、このループは間違いなく疑わしいと言えます。

while((line = reader.readLine())!= null);  {
    line = reader.readLine();
    strBuilder.append(line +"\n");
}

while 条件はリーダーからの行を消費しますが、それは処理されません。

于 2013-01-20T17:36:28.330 に答える