写入xml文件

时间:2017-10-15 18:28:52

标签: java android xml android-file

我只需要在点击应用程序中的按钮后创建并写入XML文件。如果它只是一个纯Java文件,我可以使用的代码,但如果我尝试在模拟器中作为应用程序的一部分运行它,它不会做任何事情。我没有得到任何错误,它根本没有做任何事情。

我尝试创建一个implements接口并按此方式执行,但我得到了相同的结果。

这是我现在代码的相关部分。

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    add_defect.setOnClickListener(new View.OnClickListener()
    {
            public void onClick(View v)
            {
                try {

                    DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
                    DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
                    // Add this and a bunch of other stuff that I edited out
                    Document doc = docBuilder.newDocument();
                    Element rootElement = doc.createElement("root");
                    doc.appendChild(rootElement);


                    TransformerFactory transformerFactory = TransformerFactory.newInstance();
                    Transformer transformer = transformerFactory.newTransformer();
                    DOMSource source = new DOMSource(doc);
                    StreamResult result = new StreamResult(new File("C:\\Users\\soandso\\Documents\\myXml.xml"));

                    // Output to console for testing
                    //StreamResult result = new StreamResult(System.out);

                    transformer.transform(source, result);

                } catch (ParserConfigurationException pce) {
                    pce.printStackTrace();
                } catch (TransformerException tfe) {
                    tfe.printStackTrace();
                }
            }
    }
            }
    });

}
}

1 个答案:

答案 0 :(得分:0)

您的代码在Android设备上运行,而不是Windows计算机或Android Studio。

因此,C:\\Users\\soandso\\Documents\\myXml.xml不存在,您应该收到一个Logcat错误,说明这一点。

您应该在Android上阅读File Storage,因为您还需要授予自己写入设备存储空间的权限。