我从 .xlsx 文件中获取一些字符串(字符串是简单字符)。然后我试图将这些字符串放在一个 .xml 文件中。但不幸的是,当我将这些字符串放在“createElement(StringVariableHere)”方法中时,我收到以下错误:“org.w3c.dom.DOMException: INVALID_CHARACTER_ERR: 指定了无效或非法的 XML 字符。”
我以这种方式获取字符串值:
switch (tempCell.getCellType()) {
case Cell.CELL_TYPE_STRING:
String tempColValue = tempCell.getStringCellValue();
}
这是我尝试添加字符串值的行,它给了我错误。
Element titleChild = doc.createElement(StringVariableHere);
我什至尝试使用我在网上找到的以下方法清理字符串:
public String stripNonValidXMLCharacters(String in) {
StringBuffer out = new StringBuffer(); // Used to hold the output.
char current; // Used to reference the current character.
if (in == null || ("".equals(in))) return ""; // vacancy test.
for (int i = 0; i < in.length(); i++) {
current = in.charAt(i); // NOTE: No IndexOutOfBoundsException caught here; it should not happen.
if ((current == 0x9) ||
(current == 0xA) ||
(current == 0xD) ||
((current >= 0x20) && (current <= 0xD7FF)) ||
((current >= 0xE000) && (current <= 0xFFFD)) ||
((current >= 0x10000) && (current <= 0x10FFFF)))
out.append(current);
}
return out.toString();
}
另外我正在使用以下内容来检查它是否有效,当我添加我的字符串时它返回false:
XMLChar.isValidName(StringVariableHere)
非常感谢大家的时间。斯特凡诺斯。