2013-04-20 2 views
3

У меня проблема с параметрами android и Storage (внутреннее хранилище).Где мой файл ресурсов

Я добавил сертификат SSL в «сырой» каталог, и я хочу записать его в хранилище.

В настоящее время я пытаюсь его с этим фрагментом коды:

  InputStream is = SA.getResources().openRawResource(R.raw.myResource); 
      ByteArrayOutputStream buffer = new ByteArrayOutputStream(); 

      int nRead; 
      byte[] data = new byte[16384]; 

      while ((nRead = is.read(data, 0, data.length)) != -1) 
      { 
      buffer.write(data, 0, nRead); 
      } 

      buffer.flush(); 

      FileOutputStream fos = SA.openFileOutput("Resource.crt", 0); 
      fos.write(buffer.toByteArray()); 
      fos.close(); 
      is.close(); 
      buffer.close(); 
      File f = new File(this.fileList()[0]); 
      if(f.exists()) 
      { 
       Log.v("File:", "Found"); 
      } 
      else 
      { 
       Log.v("File:", "Not found"); 
      } 

Моего Файл не найден. Я не знаю почему.

+0

пост FileList() метод код? Где рассматриваемый код находился в действии или классе? Больше информации. –

+0

Здесь этот список файлов: http://developer.android.com/reference/android/content/Context.html#fileList() – GoatMachine

+0

Попробуйте дать вашему файлу сертификата полное строчное имя. Если он действительно называется 'myResource', он не может быть скомпилирован в ваше приложение, так как допускаются только строчные буквы, цифры, символы подчеркивания и полные остановки. –

ответ

1

Я считаю fileList только возвращая имя файла, но также необходимо попробовать каталог:

File f = new File(context.getFilesDir(), filename); 
if(f.exists()){ 
    ... 

Читайте здесь:

http://developer.android.com/training/basics/data-storage/files.html#WriteInternalStorage

+0

Ах, спасибо. :) – GoatMachine

+0

@MarcoSchmidt Хорошо, примите ответ, если он сработает. –

Смежные вопросы