Абсолютно согласен. ОДНАКО, мы столкнулись с некоторыми устройствами, производители которых переопределят getExternalStorageDirectory, чтобы указывать на локальное хранилище, а не на SD-карту (что приводит в бешенство). Просто к вашему сведению.

я следующий вопрос. Я хотел бы поместить файл с именем data.xml в папку sdcard / appname и использовать его для чтения и записи данных приложения.

Итак, когда моя основная деятельность создается, мне нужно проверить, существует ли этот файл:

public class appname extends ListActivity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);

      setContentView(R.layout.no_elements_l);

      File file = getBaseContext().getFileStreamPath("/sdcard/appname/data.xml");
      if(file.exists()) { 

            return;

      } else {

            // create a File object for the parent directory
            File MTdirectory = new File("/sdcard/appname/");

            // have the object build the directory structure, if needed.
            MTdirectory.mkdirs();

            // create a File object for the output file
            File outputFile = new File(MTdirectory, "data.xml");

            // now attach the OutputStream to the file object, instead of a String representation
            FileOutputStream DataFile = new FileOutputStream(outputFile);
      }

Но у меня есть необработанное исключение типа FileNotFoundException в последней строке. В чем проблема? Используется разрешение WRITE_EXTERNAL_STORAGE добавлено в манифест.

Ответы на вопрос(2)

Ваш ответ на вопрос