2012-05-24 61 views
5

我有應用程序,用戶可以從SD卡中搜索圖像,音頻,視頻,doc文件,並選擇1個文件上傳到服務器上。 使用下面的代碼,我可以打開畫廊,並選擇圖像,音頻,視頻但我不知道如何從畫廊搜索文檔。Android如何在gallary中查看sdcard中的文檔?

這是我的代碼。

Intent intent = new Intent(); 
    intent.setAction(Intent.ACTION_GET_CONTENT); 
    //intent.setType("video/*"); 
    //intent.setType("audio/*"); 
    //intent.setType("image/*"); 
    //**What I have to do for view document[.pdf/text/doc] file** 
    startActivityForResult(Intent.createChooser(intent, "Complete action using"), REQUEST_CODE); 

有沒有人有任何想法這可以實現?任何幫助是極大的讚賞。

回答

0

希望這會幫助你打開一個文檔

public void openDOC(String name) { 


     File file = new File(Environment.getExternalStorageDirectory() + "/" 
       + bmodel.getUserMasterBO().getUserid() + "/" + name); 
     if (file.exists()) { 
      Uri path = Uri.fromFile(file); 
      Intent intent = new Intent(Intent.ACTION_VIEW); 
      intent.setDataAndType(path, "application/msword"); 
      intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 

      try { 
       startActivity(intent); 
      } catch (ActivityNotFoundException e) { 
       Toast.makeText(this, "No Application Available to View DOC", 
         Toast.LENGTH_SHORT).show(); 
      } 
     } 

    } 
+0

感謝您的支持swer。我想查看所有文件,而不是在選擇單個文件格式列表之後。我不想打開文檔。我只需要一個路徑,以便我可以在服務器上進行上傳。 – Nik88

0

嘗試以下,

File docfolder = new File(Environment.getExternalStorageDirectory() + "/" 
       + "Documents/"); 
File docList[] = docfolder.listFiles(); 
for(int i=0;i<docList.length;i++) 
{ 
     if (docList[i].exists()) { 
      Uri path = Uri.fromFile(docList[i]); 
      Intent intent = new Intent(Intent.ACTION_VIEW); 
      intent.setDataAndType(path, "application/msword"); 
      intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 

      try { 
       startActivity(intent); 
      } 
      catch (ActivityNotFoundException e) { 

      } 
     } 
} 
1

試試這個庫aFileChooser 其做工精細

請參見本link

相關問題