gpt4 book ai didi

java - 如何将 HTML 转换为保留换行符的文本

转载 作者:太空狗 更新时间:2023-10-29 14:46:32 26 4
gpt4 key购买 nike

我如何将 HTML 转换为保留换行符的文本(由 br、p、div 等元素生成...)可能使用 NekoHTML或任何足够好的 HTML 解析器

例子:
Hello<br/>World
到:

Hello\n  
World

最佳答案

这是我通过使用 Jsoup 遍历节点来输出文本(包括换行符)的函数。

public static String htmlToText(InputStream html) throws IOException {
Document document = Jsoup.parse(html, null, "");
Element body = document.body();

return buildStringFromNode(body).toString();
}

private static StringBuffer buildStringFromNode(Node node) {
StringBuffer buffer = new StringBuffer();

if (node instanceof TextNode) {
TextNode textNode = (TextNode) node;
buffer.append(textNode.text().trim());
}

for (Node childNode : node.childNodes()) {
buffer.append(buildStringFromNode(childNode));
}

if (node instanceof Element) {
Element element = (Element) node;
String tagName = element.tagName();
if ("p".equals(tagName) || "br".equals(tagName)) {
buffer.append("\n");
}
}

return buffer;
}

关于java - 如何将 HTML 转换为保留换行符的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2513707/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com