HarmonyOS documentViewPicker.select获取到的本地路径,fs.statSync(path)调用会报错,找不到文件
按照文档,本地测试:(使用fd和path会闪退)
import picker from '@ohos.file.picker';
import { BusinessError } from '@kit.BasicServicesKit';
import fs from '@ohos.file.fs';
@Entry
@Component
struct DocPickerPage {
@State message: string = 'hello World';
@State uri: Array<string> = []
async selectFile() {
try {
let DocumentSelectOptions = new picker.DocumentSelectOptions();
let documentPicker = new picker.DocumentViewPicker();
documentPicker.select(DocumentSelectOptions).then((DocumentSelectResult: Array<string>) => {
this.uri = DocumentSelectResult
}).catch((err: BusinessError) => {
});
} catch (error) {
}
}
build() {
Row() {
Column() {
Text('选择文件')
.fontSize(50)
.fontWeight(FontWeight.Bold)
.onClick(()=>{
this.selectFile()
})
// select返回的uri权限是只读权限,开发者可以根据结果集中uri做进一步的处理。
// 注意不能在picker的回调里直接使用此uri进行打开文件操作,需要定义一个全局变量保存uri,使用类似一个按钮去触发打开文件。
Text('获取文件信息')
.fontSize(50)
.fontWeight(FontWeight.Bold)
.onClick(()=>{
let path: string = this.uri[0]
let file = fs.openSync(path, fs.OpenMode.READ_ONLY);
let fileFd = 'fd://' + file.fd
let stat1 = fs.statSync(file.fd);
console.log(`result ==> ${JSON.stringify(stat1)}`);
let stat2 = fs.statSync(fileFd);
console.log(`result ==> ${JSON.stringify(stat2)}`);
let stat3 = fs.statSync(path);
console.log(`result ==> ${JSON.stringify(stat3)}`);
})
}
.width('100%')
}
.height('100%')
}
}
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS 通过documentViewPicker.select选择的文件调用fs.copyFileSync报错
291浏览 • 1回复 待解决
HarmonyOS 使用documentViewPicker选择文件获取文件路径后使用fs.readText读取文件内容失败
483浏览 • 1回复 待解决
HarmonyOS Flutter shared_preferences插件引用本地找不到文件路径以及文件
332浏览 • 1回复 待解决
HarmonyOS filePicker.DocumentViewPicker()获取的文件路径乱码
501浏览 • 1回复 待解决
HarmonyOS 页面滑动,通过provide提供的数据,会报错提示找不到
622浏览 • 2回复 待解决
HarmonyOS 使用DocumentViewPicker获取到的文件后用hash.hash失败
506浏览 • 1回复 待解决
HarmonyOS fs读取本地文件
590浏览 • 1回复 待解决
Flutter WebView加载本地html编译成ohos找不到路径的问题
764浏览 • 1回复 待解决
Cmake编译文件不支持通配符选取文件吗,编译指定路径下的*.cpp报错找不到文件
1231浏览 • 1回复 待解决
HarmonyOS fs.access(path)判断路径总是不存在
190浏览 • 1回复 待解决
文件上传的本地路径如何获取
772浏览 • 1回复 待解决
HarmonyOS Native调用TS侧方法,会报错,TS侧方法也不能获取到对象的变量
895浏览 • 1回复 待解决
HarmonyOS 一多开发中router.pushNamedRoute报错找不到路径
254浏览 • 1回复 待解决
JS文件调用对象A在controller.runJavaScript之前,导致报错对象A找不到。
1186浏览 • 1回复 待解决
选择本机上的一个xlsx文件,本地解析文件,如何获取本地文件的path
6174浏览 • 1回复 待解决
HarmonyOS 编译报错,资源文件/color/string找不到
1262浏览 • 1回复 待解决
HarmonyOS AnimationOptions发现目前本地代码依赖找不到
508浏览 • 1回复 待解决
HarmonyOS DocumentViewPicker如何从网络下载文件到本地
510浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何处理文件名混淆造成的路径找不到问题?
427浏览 • 1回复 待解决
HarmonyOS 上传文件,获取不到服务器返回的图片路径
599浏览 • 1回复 待解决
HarmonyOS 调用DocumentViewPicker.save 不提示重名文件
447浏览 • 1回复 待解决
HarmonyOS fs.unlinkSync(path) 方法没有发挥删除单个文件的作用
199浏览 • 1回复 待解决
HarmonyOS 父组件有定义一个provide的别名,但是在子组件里面找不到会报错
173浏览 • 1回复 待解决
HarmonyOS 图片上传API 时,path路径转uri报错
448浏览 • 1回复 待解决
HarmonyOS 相册获取到的图片uri,是否可以使用fs
397浏览 • 1回复 待解决
请参考以下demo: