我有這段代碼給出SAXParseError
,即它沒有獲取內容,但是當我在我的測試pg中使用它時,它的作用是正確的。這裏我提供我的原代碼塊,可以ANY1弄清楚是什麼問題org.xml.sax.SAXParseException:文件過早結束
這是部分地方I fetch a xml and append a node to it
但似乎我不能夠得到文件本身
String atemp=readFileAsString("../webapps/abc/include/xml/data.xml")
log.info("ok thats good")
String[] splitString=res.split(",")
log.info(atemp)
try
{
def root = new XmlSlurper().parseText(atemp)
}
catch(Exception e)
{
log.debug("parse errror: "+e)
}
root.appendNode {
row {
name(splitString[1])
host(splitString[2])
desc(splitString[3])
product(splitString[4])
type(splitString[5])
time(splitString[6])
by(splitString[7])
}
}
def outputBuilder = new StreamingMarkupBuilder()
String temp = outputBuilder.bind{ mkp.yield root }
File file = new File("../webapps/abc/include/xml/data.xml");
BufferedWriter output = new BufferedWriter(new FileWriter(file));
output.write(temp);
output.close();
log.info(temp)
我readFileAsString功能
輸出
INFO http-5050-Processor24 com.abc.helper.WriteXml - false
INFO http-5050-Processor24 com.abc.helper.WriteXml - File Content
INFO http-5050-Processor24 com.abc.helper.WriteXml - ok thats good
注意:我能夠打開該文件在我的測試程序具有相同路徑
您的'readFileAsString'不考慮[文檔編碼](http://www.w3.org/TR/xml/#sec-guessing)。 – McDowell 2011-06-02 10:17:22