【问题标题】:How to read and manipulate a HTML document exported from Microsoft Word?如何读取和操作从 Microsoft Word 导出的 HTML 文档?
【发布时间】:2012-10-05 15:20:25
【问题描述】:

我有一个保存为 .htm 网页的 Microsoft Word Doc。下面是我的代码。我的问题是如何从文档中获取文本,并将其附加到字符串中。我注意到该段落设置为标签<p class=MsoNormal>,因此有任何建议。我要附加的字符串是 documentText

    String documentText = "";
    FileInputStream fileInput = null;
    BufferedInputStream myBuffer = null;
    DataInputStream dataInput = null;
    fileInput = new FileInputStream(selectedFile);
    myBuffer = new BufferedInputStream(fileInput);
    dataInput = new DataInputStream(myBuffer);
    while (dataInput.available() != 0){
        System.out.println(dataInput.readLine());
    }

【问题讨论】:

    标签: java ms-word html-parsing


    【解决方案1】:

    查看HTML ParserJericho HTML Parser 等库,或使用this answer 上建议的原生HTMLEditorKit.Parser + HTMLEditorKit.ParserCallback 方法。

    【讨论】:

    • 所以在示例中,答案中传入的片段是什么。我是桌面和应用程序开发人员。网络开发人员不多。
    • 这个 API 实际上来自 Swing :D。 Bart Kiers 正在从 main 方法上的固定 html 片段创建一个StringReader,并打印遇到的每个TR(表格行)标签。您可以使用任何其他类型的阅读器(例如,指向您的外部文件的 BufferedReader)和标记(例如 <p> 标记)来执行类似的操作。
    • 哦,好吧,如果我想读入所有标签,做一些字符串操作,然后写回 html 文件怎么办?
    • 那么我再次建议使用更高级的库,例如 Jericho。查看我的答案中链接的网页上的示例程序。下载库并玩转。
    【解决方案2】:

    使用 HTML Parser 库,例如 HTML Parser

    【讨论】:

    • 马克,很抱歉直截了当,但鉴于你的问题,是的。花点时间研究 galuano1 和我建议的库并自己研究,stackoverflow 不能替代 Google。当您有更具体的问题要问时(这意味着实际进行一些解析的代码),人们将能够进一步帮助您。
    • 我明白这一点,但 Anthony Accioly 实际上指出了一个例子。不是找人帮我做。
    猜你喜欢
    • 1970-01-01
    • 2011-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-19
    • 1970-01-01
    • 2010-11-12
    • 1970-01-01
    相关资源
    最近更新 更多