相关问题
#鸿蒙通关秘籍#如何通过FilePicker设置文件永久授权?
1053浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙系统中实现用户文件的选择与保存?
1942浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何在HarmonyOS NEXT中使用TextInput组件接收用户输入?
1703浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙开发中使用Promise进行文件写入操作?
1241浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在不配置权限的情况下选择和保存用户文件?
947浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS中使用Rawfile接口进行文件操作?
1315浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS Next中使用Buffer高效拷贝大文件?
1405浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS NEXT中使用Worker子线程解压文件?
1483浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS中使用Web组件预览本地PDF文件?
1273浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在编辑状态中提示用户保存内容?
1278浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS中使用Web组件预览网络PDF文件?
887浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何在HarmonyOS中使用HttpRequest实现文件上传功能?
1142浏览 • 0回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙长时任务中使用WantAgent?
1107浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中使用TaskPool处理同步任务?
1338浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中使用Canvas创建模拟时钟?
1373浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中使用动态import高效加载模块?
1388浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙应用中使用hilog进行日志输出?
1452浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙开发中使用CSS选择器?
1342浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙开发中使用GridRowSizeOption的尺寸属性?
1104浏览 • 2回复 待解决
#鸿蒙通关秘籍#如何在Image组件中使用复制选项?
1102浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何在HarmonyOS NEXT中使用Button组件?
1311浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中使用流的形式进行文件的读写操作?
1035浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙系统中使用Node-API执行指定的abc文件?
959浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙LiteOS-M中使用LittleFS实现文件的打开和关闭?
1071浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何在HarmonyOS NEXT中使用Text组件?
1362浏览 • 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,需要定义全局变量保存。