相关问题
#鸿蒙通关秘籍#如何在鸿蒙系统中实现用户文件的选择与保存?
886浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何通过FilePicker设置文件永久授权?
521浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何在HarmonyOS NEXT中使用TextInput组件接收用户输入?
681浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙开发中使用Promise进行文件写入操作?
467浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在不配置权限的情况下选择和保存用户文件?
354浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在编辑状态中提示用户保存内容?
612浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS中使用Web组件预览网络PDF文件?
348浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何在HarmonyOS中使用HttpRequest实现文件上传功能?
501浏览 • 0回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙长时任务中使用WantAgent?
523浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中使用TaskPool处理同步任务?
660浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS中使用Web组件预览本地PDF文件?
424浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS NEXT中使用Worker子线程解压文件?
713浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS中使用Rawfile接口进行文件操作?
489浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS Next中使用Buffer高效拷贝大文件?
616浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙系统中使用Node-API执行指定的abc文件?
296浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中使用流的形式进行文件的读写操作?
360浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中使用Swiper组件实现页面切换?
527浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙应用中使用openLink接口进行跳转?
564浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙开发中使用RelativeContainer实现相对布局?
785浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙开发中使用GridContainer进行灵活布局?
464浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙开发中使用gesture方法绑定手势?
534浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何在HarmonyOS NEXT中使用Image组件?
682浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何在HarmonyOS NEXT中使用本地存储?
704浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何在HarmonyOS NEXT中使用Text组件?
658浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中使用Canvas创建模拟时钟?
668浏览 • 1回复 待解决
在鸿蒙系统上保存用户文件时,使用
FilePicker
来实现。首先需要导入选择器模块和基础文件API模块:javascript import { picker } from '@kit.CoreFileKit'; import { fileIo as fs } from '@kit.CoreFileKit'; import { BusinessError } from '@kit.BasicServicesKit'; import { common } from '@kit.AbilityKit';
然后创建文件保存选项实例,使用
DocumentViewPicker
实例的save()
方法拉起FilePicker界面进行文件保存:javascript const documentSaveOptions = new picker.DocumentSaveOptions(); documentSaveOptions.newFileNames = ["DocumentViewPicker01.txt"]; documentSaveOptions.fileSuffixChoices = ['.png', '.txt', '.mp4'];
let uris = []; let context = getContext(this) as common.Context; const documentViewPicker = new picker.DocumentViewPicker(context);
documentViewPicker.save(documentSaveOptions).then((documentSaveResult: Array<string>) => { uris = documentSaveResult; console.info('documentViewPicker.save to file succeed and uris are:' + uris); }).catch((err: BusinessError) => { console.error(
Invoke documentViewPicker.save failed, code is ${err.code}, message is ${err.message}
); });注意:不能在picker的回调中直接使用URI,需要定义全局变量保存。