当前位置:首页 > uni-app

uniapp 文件读写

2026-02-06 00:00:22uni-app

uniapp 文件读写方法

在uniapp中,文件读写操作可以通过H5、App、小程序等不同平台的API实现。以下是具体实现方式:

H5平台文件读写

H5平台可以使用HTML5的File API进行文件操作:

// 选择文件
const input = document.createElement('input')
input.type = 'file'
input.onchange = e => {
  const file = e.target.files[0]
  const reader = new FileReader()
  reader.onload = event => {
    console.log(event.target.result) // 文件内容
  }
  reader.readAsText(file) // 读取为文本
}
input.click()

App平台文件读写

App端需要使用uni-app扩展API:

// 写入文件
uni.downloadFile({
  url: 'http://example.com/file.txt',
  success: res => {
    uni.saveFile({
      tempFilePath: res.tempFilePath,
      success: savedRes => {
        console.log(savedRes.savedFilePath) // 保存路径
      }
    })
  }
})

// 读取文件
uni.getFileSystemManager().readFile({
  filePath: 'filePath',
  encoding: 'utf8',
  success: res => {
    console.log(res.data) // 文件内容
  }
})

微信小程序文件读写

微信小程序有自己的一套文件系统API:

// 写入文件
wx.downloadFile({
  url: 'http://example.com/file.txt',
  success: res => {
    wx.saveFile({
      tempFilePath: res.tempFilePath,
      success: savedRes => {
        console.log(savedRes.savedFilePath)
      }
    })
  }
})

// 读取文件
wx.getFileSystemManager().readFile({
  filePath: 'filePath',
  encoding: 'utf8',
  success: res => {
    console.log(res.data)
  }
})

通用文件操作

对于跨平台文件操作,可以使用uni-app的API:

uniapp 文件读写

// 选择文件
uni.chooseFile({
  count: 1,
  success: res => {
    const tempFilePaths = res.tempFilePaths
    uni.getFileSystemManager().readFile({
      filePath: tempFilePaths[0],
      encoding: 'utf8',
      success: readRes => {
        console.log(readRes.data)
      }
    })
  }
})

// 保存文件到本地
uni.saveFile({
  tempFilePath: 'tempFilePath',
  success: res => {
    console.log(res.savedFilePath)
  }
})

注意事项

  1. 不同平台的文件系统权限不同,iOS和Android可能有差异
  2. 小程序环境对文件系统访问有较多限制
  3. 持久化存储建议使用uni.setStorage/uni.getStorage
  4. 大文件操作需要考虑性能问题

以上方法涵盖了uniapp在主要平台上的文件读写操作,开发者可根据具体需求选择合适的方式。

标签: 文件uniapp
分享给朋友:

相关文章

uniapp怎么启动

uniapp怎么启动

启动UniApp项目的步骤 确保已安装Node.js(建议版本12+)和HBuilderX(官方IDE)。若未安装,需先下载并配置环境。 安装开发工具 从HBuilderX官网下载对应操作系统的版本…

uniapp 美颜

uniapp 美颜

uniapp 美颜实现方法 在uniapp中实现美颜功能可以通过多种方式完成,以下是一些常见的方法: 使用原生插件 uniapp支持调用原生插件实现美颜效果,适用于对性能要求较高的场景。需要开发原生…

uniapp 目录

uniapp 目录

uniapp 目录结构 uniapp 的目录结构遵循 Vue.js 项目的规范,同时包含一些特有的文件和目录。以下是典型的 uniapp 项目目录结构及其说明: project-name/ ├──…

uniapp 壁纸

uniapp 壁纸

使用 Uniapp 开发壁纸应用的方法 实现壁纸展示与切换功能 在 Uniapp 中,可通过 swiper 组件实现壁纸轮播展示。结合 image 组件加载本地或网络壁纸资源,动态绑定 src 属性实…

重构uniapp

重构uniapp

重构 Uniapp 项目的关键方法 代码结构优化 将页面、组件、静态资源按功能模块划分,避免全部堆放在根目录。建议采用以下结构: src/ ├── components/ // 通用组件…

uniapp番号

uniapp番号

关于“uniapp番号”这一搜索词,可能存在理解偏差或表述不明确的情况。以下分方向提供相关信息: Uniapp框架简介 Uniapp是一个基于Vue.js的跨平台开发框架,支持编译到iOS、Andr…