UNI-APP_APP临时文件路径转文件对象plus.io.resolveLocalFileSystemURL,文件对象转文件流plus.io.FileReader

res.tempFilePath 临时路径
_doc/uniapp_temp_1721876002122/recorder/1721877299550.mp3

官方文档:https://www.html5plus.org/doc/zh_cn/io.html

plus.io.getAudioInfo({
	filePath: res.tempFilePath,
	success: ree => {
		console.log('文件信息::', ree)
	}
})

plus.io.resolveLocalFileSystemURL(res.tempFilePath, entry => {
	entry.file(file => {
		console.log("文件对象:", file)
		
		const reader = new plus.io.FileReader()
		reader.onload = function(evt) {
			const fileData = evt.target.result
			console.log("文件流数据:", fileData)
		}
		
		reader.onerror = function(err) {
			console.error("读取文件流失败:", err.message)
		}
		reader.readAsText(file, 'UTF-8')
		//	reader.readAsDataURL(file, 'UTF-8')
	})
}, err => {
	console.error("获取文件失败:", err.message)
})
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
uni-app中,如果你希望使用plus.io来读取二进制文件,你需要先确认你的uni-app项目是基于HBuilderX开发的,并且使用了HBuilderX的uni-app插件。因为plus.io是基于HBuilderX平台提供的API,只能在HBuilderX中使用。 以下是使用plus.io来读取二进制文件的代码示例: ```javascript plus.io.requestFileSystem(plus.io.PRIVATE_DOC, function(fs) { fs.root.getFile('path/to/file.bin', { create: false }, function(entry) { entry.file(function(file) { var reader = new plus.io.FileReader() reader.onloadend = function(evt) { // 读取成功 console.log(evt.target.result) } reader.onerror = function(err) { // 读取失败 console.error(err) } reader.readAsArrayBuffer(file) }, function(err) { // 获取文件失败 console.error(err) }) }, function(err) { // 获取文件Entry失败 console.error(err) }) }, function(err) { // 请求文件系统失败 console.error(err) }) ``` 在这个示例中,我们首先使用plus.io.requestFileSystem()方法请求私有文档目录(plus.io.PRIVATE_DOC),然后通过getFile()方法获取要读取的文件的Entry对象。接下来,我们调用entry.file()方法获取文件对象,并创建一个FileReader对象来读取文件内容。最后,通过调用readAsArrayBuffer()方法来读取文件的二进制内容。 请将'path/to/file.bin'替换为你实际的二进制文件路径。 需要注意的是,这段代码只能在HBuilderX中运行,无法在其他平台上运行,因为plus.io是HBuilderX平台提供的特定API。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值