這裡有可行的一段**:
// 新增附件
w_addattach.setonclicklistener(new onclicklistener()
});
private void onselectfromfileexplorer()
system.out.println("uri=" + data.getdata());
// 通過contentreslover查詢對應的uri的資訊
contentresolver cr = this.getcontentresolver();
cursor cursor = cr.query(data.getdata(), null, null, null, null);
cursor.movetofirst();
for (int i = 0; i < cursor.getcolumncount(); i++)
// cursor中的第一列就是絕對位址
system.out.println(cursor.getstring(1));
// pic_file=new file(cursor.getstring(1));
super.onactivityresult(requestcode, resultcode, data);}
訪問系統檔案必然向獲得檔案的目錄位址,先來解釋一下uri
在學習如何獲取contentresolver前,有個名詞是必須了解的:uri。uri是網路資源的定義,在android中賦予其更廣闊的含義,先看個例子,如下:
將其分為a,b,c,d 4個部分:
a:標準字首,用來說明乙個content provider控制這些資料,無法改變的;
b:uri的標識,它定義了是哪個content provider提供這些資料。對於第三方應用程式,為了保證uri標識的唯一性,它必須是乙個完整的、小寫的類名。這個標識在元素的 authorities屬性中說明:
c:路徑,content provider使用這些路徑來確定當前需要生什麼型別的資料,uri中可能不包括路徑,也可能包括多個;
d:如果uri中包含,表示需要獲取的記錄的id;如果沒有id,就表示返回全部;
由於uri通常比較長,而且有時候容易出錯,切難以理解。所以,在android當中定義了一些輔助類,並且定義了一些常量來代替這些長字串,例如:people.content_uri
//獲得檔案的輸入流
//inputstream is=contentresolver.openinputstream(uri);
輸入歌手獲得歌曲並寫入檔案
coding utf 8 import requests import json import os while true name input 請輸入歌曲名稱 if not name.strip break if not os.path.exists name.txt with open name...
用python呼叫系統命令並獲得返回
目的 有時候需要一些系統的資訊或者執行不是python的檔案,這時候需要通過os模組呼叫它們。環境 windows 7 python 3.5.3 情景 1 我通過python處理生成乙個系統可以直接執行的檔案,如bat批處理,需要執行它 2 我對批處理比較熟悉,想要在python執行命令並獲得它的返...
檔案系統介面
檔案系統介面 1.檔案概念 檔案是記錄在外存上的相關資訊的具有名稱的集合。通常檔案表示程式和資料。資料檔案可以是數字 字元 字元數字或二進位制。檔案可以是自由形式,如文字檔案,也可以是具有嚴格的格式。因此,檔案的概念極為廣泛。1.1檔案屬性 檔案有一定的屬性,這根據系統而有所不同,但是通常都包括如下...