2015-01-13 6 views
0

내가 FileBroswer 내 응용 프로그램의 파일을 찾기 위해 노력하고있어하지만 난/저장/sdcard0/안드로이드/데이터 내 응용 프로그램의 pakage 이름으로, 그래서 나는이 코드를 만들어 내 파일을 찾을 수 없습니다 참조 해달라고 :내 앱의 파일을 어떻게 찾을 수 있습니까?

void insertToFile() 
{ 
    BufferedWriter bufferedWriter = null; 
    StringBuilder str = new StringBuilder(); 

    try { 
     FileOutputStream fileOutputStream = openFileOutput("TrustedDevicesNamesDataFile", Context.MODE_APPEND); 
     bufferedWriter = new BufferedWriter(new OutputStreamWriter(fileOutputStream)); 

     str.append(checkId + "~" + name + "\n"); 
     bufferedWriter.write(str.toString()); 

    } catch (FileNotFoundException e) { 
     e.printStackTrace(); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } finally { 
     try { 
      bufferedWriter.close(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
    } 
} 

을 누군가 나를 도울 수 있습니까?

+0

https://stackoverflow.com/a/27907886/115145 – CommonsWare

답변

-1

openFileOuput으로 만든 파일은 /data/data/your_package_name/files에 있으며 /storage/sdcard0/Android/data에는 볼 수 없습니다.

SDCard에 파일을 쓰려면 AndroidManifest.xml에서 sdcard 쓰기 권한을 아래와 같이 선언하고 openFileOutput 대신에 명시 적으로 파일을 만들어야합니다.

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
관련 문제