Подтвердить что ты не робот

Чтение всего html файла в String?

Есть ли лучшие способы прочитать весь html файл для одной строковой переменной, чем:

    String content = "";
    try {
        BufferedReader in = new BufferedReader(new FileReader("mypage.html"));
        String str;
        while ((str = in.readLine()) != null) {
            content +=str;
        }
        in.close();
    } catch (IOException e) {
    }
4b9b3361

Ответ 2

Вы должны использовать StringBuilder:

StringBuilder contentBuilder = new StringBuilder();
try {
    BufferedReader in = new BufferedReader(new FileReader("mypage.html"));
    String str;
    while ((str = in.readLine()) != null) {
        contentBuilder.append(str);
    }
    in.close();
} catch (IOException e) {
}
String content = contentBuilder.toString();

Ответ 3

Вы можете использовать JSoup.
Это очень сильный HTML parser для java

Ответ 4

Для строковых операций используйте классы StringBuilder или StringBuffer для накопления строковых блоков данных. Не используйте операции += для строковых объектов. String класс неизменен, и во время выполнения вы создадите большое количество строковых объектов, и это повлияет на производительность.

Вместо этого используйте .append() метод экземпляра класса StringBuilder/StringBuffer.

Ответ 5

Я предпочитаю использовать Guava:


import com.google.common.base.Charsets;
import com.google.common.io.Files;
String content = Files.toString(new File("/path/to/file", Charsets.UTF_8)