国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Android 調(diào)用系統(tǒng)文件選擇器讀取Uri并獲得文件名

這篇具有很好參考價(jià)值的文章主要介紹了Android 調(diào)用系統(tǒng)文件選擇器讀取Uri并獲得文件名。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一、申請權(quán)限

需要申請權(quán)限讀寫外部文件,在Manifest文件中輸入以下代碼對權(quán)限進(jìn)行聲明,分別是讀外部文件權(quán)限和寫外部文件權(quán)限:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"
        android:maxSdkVersion="32" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
        tools:ignore="ScopedStorage" />

二、調(diào)用系統(tǒng)文件選擇器

Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
//篩選文件(這里是讀取音頻目錄)
intent.setType("audio/*");
//調(diào)用系統(tǒng)文件選擇器
startActivityForResult(intent,100);

三、在Activity回調(diào)函數(shù)中接收Uri并處理

@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
	super.onActivityResult(requestCode, resultCode, data);
	if (resultCode == Activity.RESULT_OK && requestCode == 100) {
		//獲取Uri
		Uri uri = data.getData();
		//根據(jù)Uri查詢文件名
		Cursor cursor = ((Activity)context).getContentResolver().query(uri,null,null,null,null);
		if(cursor != null){
			int nameIndex = cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME);
			cursor.moveToFirst();
			//文件名
			String fileName = cursor.getString(nameIndex);
			cursor.close();
			System.out.println(fileName);
		}
	}
}

運(yùn)行效果:
android uri獲取文件名,android,java,開發(fā)語言
直接復(fù)制就能用,沒效果你來砍我文章來源地址http://www.zghlxwxcb.cn/news/detail-717313.html

到了這里,關(guān)于Android 調(diào)用系統(tǒng)文件選擇器讀取Uri并獲得文件名的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Android 編譯錯(cuò)誤:CreateProcess error=206, 文件名或擴(kuò)展名太長。

    最近更新了Android Studio 之后Android studio 編譯錯(cuò)誤:CreateProcess error=206, 文件名或擴(kuò)展名太長。 原因?yàn)?bin 文件的路徑層級太多 解決方法1: 1. Android Studio - Run - Edit Configurations - Templates - Application - shorten command line: 選擇 JAR manifest ? ?-java -cp classpath.jar classname [args] (默認(rèn)為user-lo

    2024年02月07日
    瀏覽(107)
  • Android將Uri轉(zhuǎn)為路徑字符串(適配安卓全版本)并使用第三方應(yīng)用打開文件(適配Android7.0+)

    做這個(gè)功能時(shí)在網(wǎng)上找了無數(shù)篇例子,有些方法是有問題的,故自己寫一篇完整實(shí)現(xiàn)的總結(jié),作備忘也作案例。順便說一句,Android對存儲權(quán)限的給予真的越來越嚴(yán)格 目錄 1.Uri轉(zhuǎn)為路徑String以獲得文件名? 2.獲取文件后綴名 3.通過后綴名獲取文件MIME類型? 4.設(shè)置Intent的Uri與權(quán)限

    2024年02月19日
    瀏覽(23)
  • windows 系統(tǒng)批量去掉文件名前綴 bat 腳本

    在 Windows 系統(tǒng)上,你可以使用批處理腳本(.bat 文件)來批量去掉文件名的前綴。以下是一個(gè)簡單的示例腳本,你可以根據(jù)自己的需求進(jìn)行修改: 將上述腳本保存為擴(kuò)展名為 .bat 的文件,并將 \\\"C:PathToYourFolder\\\" 替換為你想要批量移除文件名前綴的文件夾路徑,以及將 \\\"OldPr

    2024年02月13日
    瀏覽(95)
  • bug:file name too long文件名超出系統(tǒng)最大限制

    bug:file name too long文件名超出系統(tǒng)最大限制

    今天開發(fā)需求的時(shí)候發(fā)現(xiàn)無法新建文件,提示file name too lang,于是翻閱和查詢了一些資料,發(fā)現(xiàn)不同操作系統(tǒng)下文件名和目錄名最長的長度不同。 操作系統(tǒng) 文件名最大長度(字節(jié)) 路徑最大長度 Linux 255 4096 MAC 255 1024 Windows(未開啟長文件名) 255 260 Windows(開啟長文件名) 25

    2024年02月16日
    瀏覽(21)
  • OSError: [WinError 123] 文件名、目錄名或卷標(biāo)語法不正確。: ‘C:\Users\xgs87762\AppData\Loca1\Android\Sd業(yè)\platf orm-to

    OSError: [WinError 123] 文件名、目錄名或卷標(biāo)語法不正確。: ‘C:\Users\xgs87762\AppData\Loca1\Android\Sd業(yè)\platf orm-to

    在使用conda時(shí),反復(fù)出現(xiàn) Alternatively, you can set the CONDA_NO_PLUGINS environment variable on the command line to run the command without plugins enabled. 提示信息問題 原因: 因?yàn)槲业沫h(huán)境變量中,有個(gè)不存在的目錄配置在了Path路徑里面,我把它刪除后,再次輸入 conda -V 就沒有這個(gè)提示了 注意: 用戶

    2024年02月21日
    瀏覽(25)
  • Android各個(gè)應(yīng)用商店Uri

    三星: URL: https://apps.samsung.com/appquery/AppRating.as?appId=PackageName URI: “samsungapps://AppRating/PackageName” Onestore ”onestore://common/product/bg_update/PID“ https://m.onestore.co.kr/mobilepoc/apps/appsDetail.omp?prodId=PID Google Play “market://details?id=PackageName” 華為 “appmarket://details?id=PackageName” vivo “vivoMa

    2024年01月22日
    瀏覽(19)
  • android uri轉(zhuǎn)換file

    下載jar包c(diǎn)ommons-io-2.11.0.jar導(dǎo)入項(xiàng)目工程,導(dǎo)入import org.apache.commons.io.FileUtils; 如果使用系統(tǒng)import android.os.FileUtils;有些手機(jī)不兼容會導(dǎo)致項(xiàng)目崩潰

    2024年02月11日
    瀏覽(14)
  • Android 讀取Txt文件內(nèi)容

    View Code 一個(gè)獲取InputStream中字符串內(nèi)容的方法:傳入一個(gè)InputStream,返回其中的文本內(nèi)容。 View Code 以gbk編碼讀取內(nèi)容,不同的文本文件可能編碼不同,如果出現(xiàn)亂碼,可能需要調(diào)整編碼。 手機(jī)測試有安卓版本限制、生產(chǎn)廠家限制,如:某OS

    2024年02月17日
    瀏覽(26)
  • Android 保存/讀取本地SD卡文件(兼容Android 13)

    1.manifeast文件 (1)app權(quán)限 (2)application配置 (3)組件配置 注意:Android 12以上,組件創(chuàng)建會自動(dòng)生成以下屬性 表示”是否支持其它應(yīng)用調(diào)用當(dāng)前組件” 如果不添加改屬性,會報(bào)錯(cuò)。 2.動(dòng)態(tài)申請文件存儲權(quán)限 說明,Android的權(quán)限根據(jù)版本號分為三種 1:Android6.0之前 2:Androi

    2024年02月05日
    瀏覽(92)
  • python的 read, readlines,readline 有何異同,讀取文件的時(shí)候用哪個(gè)好?怎么選擇。

    python的 read, readlines,readline 有何異同,讀取文件的時(shí)候用哪個(gè)好?怎么選擇。

    先看是什么,再看怎么用。著急的話,可以看最后的一節(jié)。 開始前,先介紹一個(gè)小技巧:內(nèi)置函數(shù) repr(英文名representation)。開發(fā)調(diào)試用的,返回一個(gè)對象的字符串表示形式,包含對象的類型。 (函數(shù)str() 用于將值轉(zhuǎn)化為適于人閱讀的形式,而repr() 轉(zhuǎn)化為供解釋器讀取的形

    2024年01月24日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包