如何从服务器下载文件并将其显示在视图中?

问题描述:

我试图完成两件事情在我的Android应用:从服务器如何从服务器下载文件并将其显示在视图中?

  • 下载文件(PDF,图像和HTML)
  • 下载后的文件,从服务器,并显示在Android中保存的所有文件Tab view

我的问题是,我如何从服务器下载文件并将其显示在我的应用程序中?

我下载的代码如下所示:

public void downloadFiles() { 

     try { 

      URL url = new URL ("http://google.com/nexuspads.png"); 
      HttpURLConnection c = (HttpURLConnection) url.openConnection(); 
      c.setRequestMethod("GET"); 
      c.setDoOutput(true); 
      c.connect(); 

      String PATH = Environment.getExternalStorageDirectory() + "/download/" ; 

      Log.v ("LOG_TAG" , "PATH: " + PATH); 
      File file = new File (PATH); 
      file.mkdirs(); 

      String fileName = "image.png"; 

      File outputFile = new File (file, fileName); 
      FileOutputStream fos = new FileOutputStream(outputFile); 

      InputStream is = c.getInputStream(); 

      byte[] buffer = new byte [1024]; 

      int len1 = 0 ; 

      while ((len1 = is.read(buffer)) != -1){ 

       fos.write (buffer, 0, len1); 
      } 

      fos .close(); 
      is.close(); 

     }catch (IOException e) { 
      Log.d ("LOG_TAG2 ", "Error " + e); 
//   Toast.makeText(,"error " +e.toString(), Toast.LENGTH_LONG).show();  
     } 

    } 
+0

我试图从服务器上下载文件,现在我tryig找到一种方法来在android应用程序活动中使此文件视图。 – star18bit 2013-03-12 03:50:41

列出文件夹中的文件可以如下进行..

String path = Environment.getExternalStorageDirectory().toString()+"/YOUR folder here/"; 
      File f = new File(path);   
      final File listfile[] = f.listFiles();  
      String[] fileList = new String[listfile.length]; 
      for (int i=0; i < listfile.length; i++)  
      { 
       fileList[i] = listfile[i].getName(); 
       Log.v("Files", "FileName:" + listfile[i].getName()); 
      } 

你再会显示警告对话框的结果或在ListView中。