App Inventor 2 文件管理与备份教程

覆盖:文件读写、SD卡、云备份、文件分享

一、文件存储位置

1.1 存储目录

路径说明访问
/data/data/包名/应用私有目录仅本应用
/sdcard/Android/data/包名/外部私有目录卸载删除
/sdcard/外部存储需权限

二、文件读取

2.1 读取文本文件

定义 读取文本文件(文件路径)
  调用 文件工具1.读取文件(文件路径)

当 文件工具1.读取完成 时(文件内容)
  设置 标签_内容.文本 = 文件内容

2.2 读取CSV

定义 读取CSV(文件路径)
  调用 文件工具1.读取文件(文件路径)

当 文件工具1.读取完成 时(内容)
  初始化局部变量 行列表 = 按分隔符拆分文本(内容, "\n")
  初始化局部变量 数据列表 = 创建列表()
  
  对于 每行 在 行列表 中
    初始化局部变量 列 = 按分隔符拆分文本(每行, ",")
    追加列表项(数据列表, 列)
  
  返回 数据列表

三、文件写入

3.1 写入文本

定义 保存文本(内容, 文件路径)
  调用 文件工具1.写入文件(文件路径, 内容)

当 按钮_保存.被点击 时
  初始化局部变量 内容 = 文本输入框_内容.文本
  调用 保存文本(内容, "/sdcard/Documents/notes.txt")

当 文件工具1.写入完成 时
  调用 对话框1.显示消息对话框("保存成功", "提示", "确定")

四、文件备份

4.1 备份到云存储

定义 备份到云()
  // 读取本地文件
  调用 文件工具1.读取文件("/sdcard/Documents/data.json")

当 文件工具1.读取完成 时(内容)
  // 上传到服务器
  设置 Web客户端1.URL = "https://your-server.com/backup"
  调用 Web客户端1.发送POST文本("data=" + 内容)

当 Web客户端1.获得文本 时(URL, 响应码, 响应类型, 响应内容)
  如果 响应码 = 200 则
    调用 对话框1.显示消息对话框("备份成功", "提示", "确定")

4.2 从云恢复

定义 从云恢复()
  设置 Web客户端1.URL = "https://your-server.com/backup/latest"
  调用 Web客户端1.发送GET请求()

当 Web客户端1.获得文本 时(URL, 响应码, 响应类型, 内容)
  如果 响应码 = 200 则
    调用 保存文本(内容, "/sdcard/Documents/data.json")
    调用 对话框1.显示消息对话框("恢复成功", "提示", "确定")

五、SD卡管理

5.1 检查SD卡

定义 检查SD卡()
  初始化局部变量 状态 = 获取键的值(调用 文件工具1.获取存储状态(), "external", "未知")
  如果 状态 = "可读写" 则
    设置 标签_状态.文本 = "SD卡: 可用"
  否则
    设置 标签_状态.文本 = "SD卡: 不可用"

六、文件分享

6.1 分享文件

当 按钮_分享.被点击 时
  调用 分享1.分享文件("/sdcard/Pictures/screenshot.png")

常见问题

Q1:文件找不到?

检查路径和权限

Q2:写入失败?

可能是存储空间不足
文档版本:2026.03 | 作者:App Inventor 2 中文网 www.fun123.cn

参考资料与版权声明

原文来源

版权声明

本文档基于 MIT App Inventor 官方文档及社区资源整理,版权归原作者所有:
  • MIT App Inventor 官方文档采用 CC BY-SA 4.0 授权
  • MIT App Inventor Community 帖子版权归原作者所有
本文档由 ai2claw 🐝 整理,仅供学习参考,如有侵权请联系删除。