【发布时间】:2021-04-18 19:40:51
【问题描述】:
我正在尝试对带有内容的 docx 文件进行语言环境翻译
Name
Name <emp/100>
AccProd < Tool>
Data <Cont:9000000>
ML <mail@gmail.com>
Alto <TL100>
Test<888>
Address < India>
Mode <AUTO>
Mode <manual>
但我没有得到正确的翻译文件,它一直给出这个错误(belo),但它没有说明它发现哪个字符无效。
org.w3c.dom.DOMException: STRING_TOO_LONG:
The resulting string is too long to fit in a DOMString: 'The character ' ' is an invalid XML character'.
Caused by: java.io.IOException: The character ' ' is an invalid XML character
代码:
DOMImplementationLS ls = (DOMImplementationLS) document.getImplementation();
LSSerializer ser = ls.createLSSerializer();
String xml = ser.writeToString(currentNode); ------> this is where is throws exceptions
currentNode = 待翻译文档中的节点
【问题讨论】:
-
currentNode 到底有多大?它有几个孩子?它有多少文本内容?
-
我的猜测是xml不喜欢使用control character。我们已经看到了与 form feed 字符完全相同的问题。
-
请说明您要阅读的文件类型。 docx 文件是 Microsoft Word 文件。您的意思是要将 Word 文件解析为 XML?
-
@vanje 我正在解析 docx 文件,它在内部将其转换为 xml 并对其进行处理以输出最终的翻译文件