我正在使用 dom4j 提取 xml 文件中的信息(全部在一个文件夹中)。这是我的代码:
File folder = new File("c:/folder directory");
File[] listOfFiles = folder.listFiles();
FileOutputStream foutstream = new FileOutputStream("c:/mozilla_expertlist.txt",true);
PrintWriter writer = new PrintWriter(foutstream);
for (File file: listOfFiles)
{
System.out.println(file.getName());
File f = new File("c:/Users/dahuo2013/workspace/mozilla_xml/"+file.getName());
SAXReader reader = new SAXReader();
reader.setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd", false);
reader.setEncoding("utf-8");
Document doc = reader.read(f);
Element root = doc.getRootElement();
Element foo;
for (Iterator i = root.elementIterator("bug"); i.hasNext();)
{
foo = (Element) i.next();
writer.println(foo.elementText("assigned_to"));
}
}
writer.close();
我的代码正在运行,但它总是有错误报告。然后我发现当xml文件有NUL NUL NUL字符时。它显示错误。当我删除那些 NUL 字符时。它肯定会奏效。
但是我的文件夹里有4000多个xml文件。我不能用手一一删除那些NUL。我的 xml 由 utf-8 编码。有什么简单的方法可以避免那些 NUL 字符吗?或者什么样的简单解决方案可以删除那些 NUL 字符?
谢谢!
还:
这是 NUL 字符。我在记事本++中打开