сохранить текст данных на SD-карту в Android? - PullRequest
0 голосов
/ 01 апреля 2012

Я должен сохранить текст данных на SD-карту.

Это мой код:

 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();
            }

В AndroidMainfest у меня есть:

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

Я не понимаю, почему это не работает?

В Toast сообщается об ошибке: В доступе отказано?

Пожалуйста, помогите мне.

Ответы [ 2 ]

0 голосов
/ 01 апреля 2012

Вы также можете попробовать это https://github.com/uberspot/AndroidStorageUtils это класс / пакет-обертка, который делает использование памяти в Android немного проще :) У него также есть метод saveStringOnExternalStorage.

0 голосов
/ 01 апреля 2012

Попробуйте этот код должен решить проблемы ...

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
  }
...