相关问题
#鸿蒙通关秘籍#如何在鸿蒙系统中获取文档类URI?
1090浏览 • 1回复 待解决
#鸿蒙通关秘籍#怎样在鸿蒙应用中获取文件URI的持久化权限?
1280浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何通过URI在鸿蒙系统中实现文件分享?
1258浏览 • 1回复 待解决
#鸿蒙通关秘籍#在鸿蒙系统中如何处理媒体文件URI?
1266浏览 • 1回复 待解决
#鸿蒙通关秘籍#鸿蒙系统中如何管理文件选择过程中得到的URI?
1196浏览 • 1回复 待解决
#鸿蒙通关秘籍#在HarmonyOS NEXT中如何选择并读取文件内容?
1295浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙系统中编辑并保存文档文件?
1474浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何从URI获取路径?
1117浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙系统中创建并获取键值型数据库
1166浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙系统中获取和修改文件的加密分区?
1510浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何获取文件或文件夹当前所在路径的URI?
1592浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中获取文件系统的存储空间信息?
1303浏览 • 1回复 待解决
#鸿蒙通关秘籍#在鸿蒙系统中,如何从数据库中查询数据并获取结果集?
1279浏览 • 1回复 待解决
#鸿蒙通关秘籍#在HarmonyOS中,如何使用URI来启动应用?
1123浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何启动其他应用的UIAbility并获取返回结果?
1170浏览 • 1回复 待解决
如何根据uri读取文件?
4368浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙应用中获取应用对象?
1382浏览 • 1回复 待解决
#鸿蒙通关秘籍#在应用沙箱路径中如何获取应用文件路径?
1086浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS中读取Rawfile文件的剩余长度?
1258浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何获取应用文件路径?
1370浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中将文件路径转换为URI?
1364浏览 • 1回复 待解决
#鸿蒙通关秘籍#在鸿蒙应用中如何创建并使用视频组件?
1088浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙OS中实现文件间内容的读取与写入?
1503浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙系统中接收他人共享的文件?
1259浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS中保存下载的文件并读取其内容?
1660浏览 • 1回复 待解决
支持打开文件的应用需要在
module.json5
中声明文件打开能力,允许打开以file://
协议开头的文件,并通过URI获取待打开的文件。在拉起应用后,处理传入的Want
参数信息,从中获取待打开文件的URI即可。bash { "module": { "abilities": [ { "skills": [ { "actions": ["ohos.want.action.viewData"], "uris": [ { "scheme": "file", "type": "text/plain", "linkFeature": "FileOpen" } ] } ] } ] } }
处理文件的代码如下:
javascript import fs from '@ohos.file.fs'; import { Want } from '@kit.AbilityKit'; import { BusinessError } from '@kit.BasicServiceKit';
export default class EntryAbility extends UIAbility { onCreate(want: Want, launchParam: AbilityConstant.LaunchParam) { let uri = want.uri; if (!uri) { console.info('uri is invalid'); return; } try { let file = fs.openSync(uri, fs.OpenMode.READ_WRITE); console.info('Succeed to open file.'); } catch (err) { let error: BusinessError = err as BusinessError; console.error(
Failed to open file openSync, code: ${error.code}, message: ${error.message}
); } } }