在Android中的内部存储上保存文件

时间:2014-11-06 20:40:00

标签: java android xml android-activity save

我正在尝试将解析后的XML从Web保存到本地存储。 我使用以下代码(此代码在HandleXML.java 中):

CODE

public void fetchXML(){
            Thread thread = new Thread(new Runnable(){
                @Override
                public void run() {
                    try {
                        URL url = new URL(urlString);
                        HttpURLConnection conn = (HttpURLConnection)
                        url.openConnection();
                        conn.setReadTimeout(10000 /* milliseconds */);
                        conn.setConnectTimeout(15000 /* milliseconds */);
                        conn.setRequestMethod("GET");
                        conn.setDoInput(true);
                        conn.connect();
                        InputStream stream = conn.getInputStream();
                        XMLdata =String.valueOf(stream);

                        //createFile(XMLdata);
                        String filename = "XMLdata";
                        FileOutputStream outputStream;
                        try {
                             outputStream = openFileOutput(filename, Context.MODE_PRIVATE);
                             outputStream.write(string.getBytes());
                             outputStream.close();
                              } catch (Exception e) {
                                e.printStackTrace();
                              }

                        xmlFactoryObject = XmlPullParserFactory.newInstance();
                        XmlPullParser myparser = xmlFactoryObject.newPullParser();

                        myparser.setFeature(XmlPullParser.FEATURE_PROCESS_NAMESPACES
                                , false);
                        myparser.setInput(stream, null);
                        parseXMLAndStoreIt(myparser);
                        stream.close();
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                }
            });

            thread.start();


        }

错误:无法解析方法openFileOutput。

如果我尝试使用建议的修复程序修复错误,它会创建一个方法,但它仍然不起作用。 有什么想法吗?

我认为原因是因为我不在MainActivity中使用它。如果是这样,你能建议我修复一下吗?因为我在HandleXML类中获取XML。

1 个答案:

答案 0 :(得分:1)

public void fetchXml(Activity a) {
    a.openFileInput(...);
}