我正在开发一个Android应用程序,使用FileOutputStream
使用以下代码以XML格式将数据写入文件。
FileOutputStream fos = new FileOutputStream(file);
fos.write(getXMLFileHeader().getBytes(StandardCharsets.UTF_8));
fos.write(getXMLProject().getBytes(StandardCharsets.UTF_8));
fos.write(getXMLReportData().getBytes(StandardCharsets.UTF_8));
fos.write(getXMLFileFooter().getBytes(StandardCharsets.UTF_8));
fos.flush();
fos.close();
正在创建文件并写入了一些数据......但不是全部。我希望在文件中看到如下内容:
<?xml version="1.0" encoding="UTF-8"?>
<Project name="Report1" creator="Pete">
<Report>This would be where the data for the report would go.</Report>
</Project>
然而,我所看到的是:
<?xml version="1.0" encoding="UTF-8"?>
<Project name="Report1" creator="Pete">
<Report>This would be where the data for the
正如您所看到的,它似乎在关闭之前停止写入文件。谁能告诉我如何解决这个问题?谢谢!
修改:添加了getXML*()
方法的示例。
private String getXMLReportData() {
return "<Report>" + GlobalVariables.strReportData + "</Report>";
}
这些方法只返回一个字符串,如上例所示。