5

我让我的学生将他们的 Microsoft Word 作业提交到 ColdFusion 10 服务器。我想写一个错误检查器来检查常见的错误,比如标题中没有页码、标题页上的学校名称、标题页上的名字等等。我指定了很多 APA 规则. 示例:短语“Running head:”必须出现在第 1 页的页眉部分,但不能出现在论文的其余部分。我为每个规则分配一个点值。

理想情况下,这个错误检查器会在他们提交作业时运行并立即告诉他们。这可能需要使用

parser.parseFromString(str, "text/xml");

但作为替代方案,如果我可以编写一个程序来检查错误,那将有助于自动评分。换句话说,使用 Microsoft Access 或 Visual Studio。但我不想这样做,因为那样我就必须在服务器上安装 Visual Studio,而且我认为这不可行。

最后一种选择是从服务器下载所有论文并在本地运行程序,这比手动评分要好一步。

4

3 回答 3

2

几年前我使用 VBA 完成了此操作,请参阅本文。这是解析文档每个段落的摘录:

Public Sub ParseLines()
    Dim singleLine As Paragraph
    Dim lineText As String

    For Each singleLine In ActiveDocument.Paragraphs
        lineText = singleLine.Range.Text

        '// parse the text here...

    Next singleLine
End Sub
于 2013-02-01T21:32:15.563 回答
2

我知道您已经找到了答案,但我认为 Id 会使用 Apache POI 从 word 文档中提取数据。我知道你可以像这样得到页面的标题

fis = createObject("java","java.io.FileInputStream").init(ExpandPath('./mydoc.docx'));
document = createObject("java","org.apache.poi.xwpf.usermodel.XWPFDocument").init(fis);
fis.close();

policy = document.getHeaderFooterPolicy();
firstHeader = policy.getFirstPageHeader().getText();
defaultHeader = policy.getDefaultHeader().getText();

我知道这只是您请求的标题部分。有一种方法可以查看文档来获取偶数和奇数页眉。

阿帕奇 POI

于 2013-02-06T22:41:27.137 回答
1

试用:

http://docxextractor.riaforge.org/

我提取所有清晰的和一些格式

免责声明:我写的

于 2013-02-01T23:50:36.533 回答