2014-03-01 3 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

단지 간단한 질문 : 왜 (그래서 여기 물어 캔트 코멘트) XML 또는 saxparser에 대한 dom을 사용하지

관련 문제