2014-03-01 42 views
0

我寫了一個非常簡單的XML文件,應保存在文件資源管理器下的數據文件夾中,但我根本找不到它!我不確定我的代碼是否有問題,或者我的日食有問題。這是下面的代碼。Android XML文件資源管理器文件不會保存

package com.example.xmltesterone; 

import java.io.FileNotFoundException; 
import java.io.FileOutputStream; 
import java.io.IOException; 

import org.xmlpull.v1.XmlSerializer; 

import android.app.Activity; 
import android.os.Bundle; 
import android.util.Xml; 
import android.view.Menu; 
import android.view.View; 
import android.widget.Button; 
import android.widget.EditText; 

public class MainActivity extends Activity { 

    Button SubmitButton, ViewDataButton; 
    EditText FirstNameBox, LastNameBox; 


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

     SubmitButton = (Button) findViewById(R.id.SubmitButton); 
     ViewDataButton = (Button) findViewById(R.id.ViewData_Button); 

     FirstNameBox = (EditText) findViewById(R.id.EditTextOne); 
     final String FN = FirstNameBox.getText().toString(); 
     LastNameBox = (EditText) findViewById(R.id.EditTextTwo); 

     SubmitButton.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 
       try { 
        FileOutputStream myFile = openFileOutput("treasures.xml", Activity.MODE_APPEND); 
        XmlSerializer serializer = Xml.newSerializer(); 

        serializer.setOutput(myFile, "UTF-8"); 

        serializer.startDocument(null, Boolean.valueOf(true)); 


        // set indentation option 
        serializer.setFeature("http://xmlpull.org/v1/doc/features.html#indent-output", true); 

        // start a new top level tag and other tags 
        serializer.startTag(null, "Items"); 
        serializer.startTag(null, "Treasure"); 


        serializer.startTag(null, "FirstName"); 
        serializer.attribute(null, "xxxx", FN); 
        serializer.endTag(null, "FirstName"); 

        serializer.endDocument(); 

        // perform the write by flushing 
        serializer.flush(); 

        // close the file stream 
        myFile.close(); 



       } catch (FileNotFoundException e) { 
        // TODO Auto-generated catch block 
        e.printStackTrace(); 
       } catch (IllegalArgumentException e) { 
        // TODO Auto-generated catch block 
        e.printStackTrace(); 
       } catch (IllegalStateException e) { 
        // TODO Auto-generated catch block 
        e.printStackTrace(); 
       } catch (IOException e) { 
        // TODO Auto-generated catch block 
        e.printStackTrace(); 
       } 
      } 
     }); 

    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     // Inflate the menu; this adds items to the action bar if it is present. 
     getMenuInflater().inflate(R.menu.main, menu); 
     return true; 
    } 

} 
+1

你正在查看'/ data/data/'嗎? – nikis

回答

1

openFileOutput點到文件夾getFilesDir()。在大多數情況下,它是/data/data/<your app>/files。但是,除非您擁有固定設備,否則您無法從設備上的文件資源管理器訪問此文件夾。但您可以通過DDMS查看此文件夾,您可以在Android SDK找到該文件夾​​。

1

只是簡單的問題:爲什麼不使用dom爲XML或saxparser(廣東話議論,要求它在這裏)