Как скачать файл на эмуляторе Android? - PullRequest
0 голосов
/ 03 июля 2010

с помощью веб-сервисов мы можем загружать файлы из облака в буферное хранилище. Теперь нам нужно получить доступ к этому загруженному файлу из буферной памяти и переместить его на SD-карту. Я использую Eclipse и плагин для Android.

Может кто-нибудь поделиться каким-нибудь кодом?

Мой фрагмент кода ниже.

      String filename = "Test.zip";
      URL url = new URL(FromUrl);
      HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();  
      urlConnection.setRequestMethod("GET");
      urlConnection.setDoOutput(true);
      urlConnection.connect();  

      FileOutputStream fileOutput = openFileOutput(filename, Context.MODE_WORLD_READABLE);

      InputStream inputStream = urlConnection.getInputStream();  

      int totalSize = urlConnection.getContentLength();  
      int downloadedSize = 0;  

      //create a buffer...  
      byte[] buffer = new byte[1024];  
      int bufferLength = 0; //used to store a temporary size of the buffer  

      //now, read through the input buffer and write the contents to the file  
      while ( (bufferLength = inputStream.read(buffer)) > 0 ) {  
          fileOutput.write(buffer, 0, bufferLength);  
          downloadedSize += bufferLength;  
      }  
      //close the output stream when done  
      fileOutput.close();

      return filename;

1 Ответ

0 голосов
/ 06 июля 2011

Просто сохранить на SDCard?

fileoutput = new FileOutputStream("/sdcard/"+filename);

Это быстро и грязно, но пока работает на каждом андроиде. Если хочешь быть немного аккуратнее ...

File ofile = new File(Environment.getExternalStoragePublicDirectory (Environment.DIRECTORY_DOWNLOADS),filename);
FileOutputStream f = new FileOutputStream(ofile);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...