簡體   English   中英

Android XMLSerializer無法將所有數據寫入XML文件

[英]Android XMLSerializer cannot write all data into XML file

現在,我正在嘗試通過uiautomator運行uiautomation測試來編寫XML文件。 我使用XMLSerializer在android中編寫XML。 沒關系。 它在運行測試時寫入XML文件。 如下所示,它無法寫入所有數據的一件事。

<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<tests>
    <test>
         <no>1</no>
         <desc>Test One</desc>
    </test>
    <test>
         <no>2</no>
         <desc>Test Two</desc>
    </test>
    <tes

看,它不能寫入所有數據。 這是我的代碼。

// Export XML file content.
XmlSerializer serializer = Xml.newSerializer();

StringWriter stringWriter = new StringWriter();

serializer.setOutput(stringWriter);
serializer.startDocument("UTF-8", true);
serializer.setFeature("http://xmlpull.org/v1/doc/features.html#indent-output", true);

serializer.startTag(null, "tests");

for(Test test : testList){
    serializer.startTag(null, "test");

    serializer.startTag(null, "no");
    serializer.text(test.getNo());
    serializer.endTag(null, "no");

    serializer.startTag(null, "desc");
    serializer.text(test.getDesc());
    serializer.endTag(null, "desc");

    serializer.endTag(null, "test");
}

serializer.endTag(null, "tests");

// Write file.
FileWriter fileWriter = new FileWriter("test.xml");

fileWriter.write(stringWriter.toString());

fileWriter.close();

我的testList至少有15個測試。 因此,它應該編寫所有測試。 但是它只寫2。為什么! 我不知道。

幫我。 謝謝。

我希望在這種情況下使用Editable

范例

 Editable editable;
....
....
....
 editable.append("<Type> " + "Name"+ " </Type>" + "<Class>" +"Class Name" + "</Class>");

它更容易並且可以執行相同的操作。 希望能幫助到你。 :)

主要問題是“您沒有結束序列化程序的文檔” ,如下所示:

serializer.endDocument();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM