Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Работа с сетью > скорость загрузки страницы


Автор: blackbanny 3.5.2013, 14:48
Доброго времени суток!
Получаю страницу и время ее скачивания следующим образом:
Код

URLConnection conn;
        InputStreamReader is;
        BufferedReader in = null;
        StringBuilder htmlPage = null;
        
        try {
            URL url = new URL(site);
            conn = url.openConnection();
            long startTime = System.currentTimeMillis();
            is = new InputStreamReader(conn.getInputStream());
            in = new BufferedReader(is);
            
            String inputLine;
            htmlPage = new StringBuilder("");
            while ( (inputLine = in.readLine()) != null ) {
               htmlPage.append(inputLine);
               inputLine = null;
            }
            long endTime = System.currentTimeMillis();
            System.out.println(endTime - startTime);
            
        } catch (MalformedURLException ex) {
            Logger.getLogger(DowloadSpeedPage.class.getName()).log(Level.SEVERE, null, ex);
        } catch (IOException ex) {
            Logger.getLogger(DowloadSpeedPage.class.getName()).log(Level.SEVERE, null, ex);
        } finally {
            conn = null;
            
            if (in != null) {
                try {
                    in.close();
                } catch (IOException ex) {
                    throw new Exception("не удалось закрыть поток!");
                }
            }
        }

Верно ли определяю время скачивания страницы? Как можно узнать размер скачиваемой страницы и среднюю скорость загрузки(например Кб/сек)?

Автор: blackbanny 3.5.2013, 16:19
если получаю размер страницы таким образом:
Код

HttpURLConnection qwe = (HttpURLConnection)url.openConnection();
            System.out.println(qwe.getContentLength());

то выводит почему то -1

Автор: Stolzen 3.5.2013, 17:16
-1 возвращается тогда, когда размер неизвестен (http://docs.oracle.com/javase/1.5.0/docs/api/java/net/URLConnection.html#getContentLength%28%29)

Время определяете правильно

Автор: blackbanny 17.5.2013, 06:55
Цитата(Stolzen @ 3.5.2013,  17:16)
-1 возвращается тогда, когда размер неизвестен (http://docs.oracle.com/javase/1.5.0/docs/api/java/net/URLConnection.html#getContentLength%28%29)

Время определяете правильно

а как тогда узнать размер страницы?

Автор: blackbanny 20.5.2013, 09:53
UP

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)