我正在从 ftp 下载文件,将其保存到我的本地文件系统中,然后使用createXMLStreamReader
. 当我尝试解析它时,我收到此错误:javax.xml.stream.XMLStreamException: ParseError at [row,col]:[124,316]
. 当我手动将其复制并粘贴到另一个文件时,一切正常。我试过用这个复制文件,文件被复制了,但我仍然遇到同样的错误。我确实意识到这是由于<xml
节点之前的二进制字符引起的,但我不确定如何摆脱它们。
我无法控制从 ftp 复制的内容,我正在使用java 1.7
我检索文件的代码:
client.connect("ftp.domain.com");
client.login("user", "password");
String filename = assetsPath + "/ftpExport.xml";
fos = new FileOutputStream(filename);
client.retrieveFile("/Export.xml", fos);
我创建 StreamReader 的代码:
inputFactory = XMLInputFactory.newInstance();
File f = new File(Parser.class.getProtectionDomain().getCodeSource().getLocation().getPath());
assetsPath = f.toString()+"/../assets";
xmlReader = inputFactory.createXMLStreamReader(
new FileReader(assetsPath + "/Export.xml"));