2012-04-01 2 views
0

Ich muss Daten auf SD-Karte speichern.Speichern von Daten auf SD-Karte in Android?

Dies ist mein Code:

try { 

       File myFile = new File(Environment.getExternalStorageDirectory()+"/mnt/sdcard/mysdfile.txt"); 

       myFile.createNewFile(); 
       FileOutputStream fOut = new FileOutputStream(myFile); 
       OutputStreamWriter myOutWriter = 
             new OutputStreamWriter(fOut); 
       myOutWriter.append(txtData.getText()); 
       myOutWriter.close(); 
       fOut.close(); 
       Toast.makeText(getBaseContext(), 
         "Done writing SD 'mysdfile.txt'", 
         Toast.LENGTH_SHORT).show(); 
      } catch (Exception e) { 
       Toast.makeText(getBaseContext(), e.getMessage(), 
         Toast.LENGTH_SHORT).show(); 
      } 

In AndroidMainfest ich habe:

<uses-permission android:name="android.permisson.READ_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 

Ich verstehe nicht, warum es nicht funktionieren?

In Toast gemeldet Fehler: Berechtigung verweigert?

Bitte helfen Sie mir.

+0

Was passiert, wenn Sie es versuchen? –

+0

versuchen, zu ändern: 'Datei myFile = neue Datei ("/mnt/sdcard/mysdfile.txt ");' – idiottiger

+0

mögliche Duplikate von [Schreiben einer Datei auf SD-Karte] (http://stackoverflow.com/questions/2455102/Eine-Datei-zu-SD-Karte schreiben) – jww

Antwort

0

diesen Code Versuchen Sie Probleme lösen muss ...

try{ 
    String filename = "filename.txt"; 
    File myFile = new File(Environment.getExternalStorageDirectory(), filename); 

    if(!myFile.exists()) 
     myFile.createNewFile(); 
    FileOutputStream fos; 
    byte[] data = txtData.getBytes(); 
    try { 
     fos = new FileOutputStream(myFile); 
     fos.write(data); 
     fos.flush(); 
     fos.close(); 
    } 
    catch (FileNotFoundException e) { 
    // handle exception 
    } catch (IOException e) { 
    // handle exception 
    } 
Verwandte Themen