Unity 数据持久化——persistentDataPath储存路径

news/2024/5/9 6:37:08

Unity中:

StreamingAssets的文件夹,特点是:只能读,不能写.

persistentDataPath可读可写(但是,此文件夹在Editor阶段没有,手机安装App后自动生成)

可以将一些必需的文件先放在StreamingAssets,在App安装后Copy到persistentDataPath文件夹

public void copy(string fileName = "test.txt")
{//文件地址string url;//Mac,Windows或Linux平台#if UNITY_EDITOR || UNITY_STANDALONE url = $"file://{Application.dataPath}/StreamingAssets/{fileName}";//ios平台路径#elif UNITY_IPHONEurl = $"file://{Application.dataPath}/Raw/{fileName}";//安卓路径#elif UNITY_ANDROIDurl = $"jar:file://{Application.dataPath}!/assets/{fileName}";#endifstring persistentUrl = $"{Application.persistentDataPath}/{fileName}";if (!File.Exists(persistentUrl)){Debug.Log($"{persistentUrl} 文件不存在,从StreamingAssets中Copy!");WWW www = new WWW(url);while (true){if (www.isDone){if (www.error == null){//本次读的文本 File.WriteAllText(persistentUrl, www.text);   File.WriteAllBytes(path, www.bytes);Debug.Log($"持久化目录: {persistentUrl}");break;}else{Debug.LogWarning($"没得到StreamingAssets的文件 : {fileName}");}}}}else{Debug.Log($"{persistentUrl} 文件已存在!");}
}

PC路径:C:/Users/admin/AppData/LocalLow/OurTest/PublicObj/test.txt

安卓:/storage/emulated/0/Android/data/com.OurTest.PublicObj/files/test.txt

PS:项目中用到调用win自带软件调取对应路径文件的功能,经测试,路径指定时不能是

“***/***/***/*******.***”形式

要改为“***\\***\\***\\*******.***”,如果遇到类似的问题,可以尝试修改看看。


http://www.mrgr.cn/p/82610061

相关文章

Blender点操作

顶点操作即一般的“布线”操作 1.顶点移动 -先切到顶点模式 -移动,G 或 G X/Y/Z -旋转,R 同上 -缩放,S 同上 2.顶点滑移,用于微调顶点的位置 快捷键:Shift V,G G 3.顶点删除 -选中一个顶点 -按…

单机三pxc节点集群,+docker-haproxy2.0负载均衡实现

一.下载 https://www.haproxy.org/download/2.0/src/haproxy-2.0.5.tar.gz 或者在这里下载(下面需要的各个配置文件都有): https://download.csdn.net/download/cyw8998/89170129 二.编写文件,制作docker镜像 1.Dockerfile&a…

SpringBoot源码阅读2-自动配置

SpringBoot源码阅读2-自动配置 在传统的Spring应用中,开发者需要手动配置一系列Web应用的核心组件,例如DispatcherServlet用于处理请求分发、ViewResolver用于视图解析、CharacterEncodingFilter用于字符编码过滤等。 然而在SpringBoot中只要引入了spr…

Mudem,打造私密安全、高效稳定的私人空间

Mudem 是 Codigger 平台中的一个关键组件,它提供基础通讯服务,确保不同类型的机器之间可以进行安全和高效的连接。它其设计理念在于将本地机器、公有云以及私有云上的设备无缝地整合为一个可远程在线访问的工作站(Workstation)。这…

Flutter 上架如何解决 ITMS-91053 问题

最近,我的 Flutter App 发布到 TestFlight 后,就会收到一封邮件:The uploaded build for YOUR APP has one or more issues. 上面的邮件主要是说,我的 App 缺少了调用 API 的声明,以前从来没看到过,上网一查…

百度昆仑、华为NPU

百度昆仑、华为NPU 为智能计算而生的昆仑芯XPU架构 昆仑芯科技团队于2017年在Hot Chips上发布自研的、面向通用AI计的芯片核心架构——昆仑芯XPU。 集十余年AI加速研发实践,昆仑芯XPU从AI落地的实际需求出发,按照复杂前沿的人工智能场景需求开展迭代, 致力为开发者提供通用、…

低代码技术与仓储管理的新纪元:革命性的供应链变革

引言 在当今数字化时代,企业对于创新和效率的追求越发迫切。在这样的背景下,低代码技术应运而生,成为企业数字化转型的重要工具之一。低代码技术的崛起为企业提供了一种快速、灵活、成本效益高的开发方式,大大缩短了软件开发周期…

【Leetcode】vector刷题

🔥个人主页:Quitecoder 🔥专栏:Leetcode刷题 目录 1.只出现一次的数字2.杨辉三角3.删除有序数组中的重复项4.只出现一次的数字II5.只出现一次的数字III6.电话号码的字母组合 1.只出现一次的数字 题目链接:136.只出现一…

使用 NVM 动态切node版本

一、安装nvm 官网链接: Release 1.1.9 coreybutler/nvm-windows GitHub 无脑安装直接下一步 安装完之后验证一下: #打开命令行输入命令 nvm 这样就是安装好了,然后我们开始安装node。 二、使用nvm安装node 1、去node官网获取版本号 …

【Linux】帮助类命令

在Linux中,man用于查看系统手册页(manual pages)。它用于查阅关于特定命令、函数、工具或文件格式的详细信息。要使用man命令,只需在终端中输入man,后跟您要查看的命令或主题的名称。 例如,如果查看ls命令…

JEECG/SpringBoot集成flowable流程框架

IDEA安装Flowable BPMN visualizer插件 pom.xml中引入flowable相关依赖 <dependency><groupId>org.flowable</groupId><artifactId>flowable-spring-boot-starter</artifactId><version>6.7.2</version></dependency><depe…

CSS基础:table的4个标签的样式详解(6000字长文!附案例)

你好&#xff0c;我是云桃桃。 一个希望帮助更多朋友快速入门 WEB 前端的程序媛。 云桃桃-大专生&#xff0c;一枚程序媛&#xff0c;感谢关注。回复 “前端基础题”&#xff0c;可免费获得前端基础 100 题汇总&#xff0c;回复 “前端工具”&#xff0c;可获取 Web 开发工具合…

JVM知识点总结二

参考文章&#xff1a;【Java面试题汇总】JVM篇&#xff08;2023版&#xff09;_jvm面试题2023-CSDN博客 1、说说你了解的JVM内存模型&#xff1a; JVM由三部分组成&#xff1a;类加载子系统、运行时数据区、执行引擎 JVM内存模型&#xff1a; 内存模型里的运行时数据区&#…

汽车组装3D电子说明书更通俗易懂

激光打印机由于造价高、技术更先进&#xff0c;因此在使用和维护上需要更专业的手法&#xff0c;而对于普通客户来说并不具备专业操作激光打印机的技能&#xff0c;为了通俗易懂地让客户理解激光打印机&#xff0c;我们为企业定制了激光打印机3D产品说明书&#xff0c;将为您带…

计算机(电脑)硬件组成基本介绍4

详细介绍的计算机(电脑)硬件组成.电源插座为主板提供供电的电源接口目前,主板电源接口插座主要采用ATX电源接口, ATX电源接口一般为24针电源插座、8 针电源插座、4针电源插座等,主要为主板提供5V、 12V、3.3V 电压等. ATX 电源都支持软件关机功能。目前,双核CPU 主板上的…

Git学习路线

1.看书 把这本书看懂就可以了&#xff1b;这个是比较专业的一本书&#xff1b;比较系统&#xff1b;没有书的可以私信我 2.理解Git多个分区和多个分支 多个分区包括&#xff1a;工作区、暂存区、本地仓、本地的远端仓信息、远端仓 多个分区的状态 分支及其变化 3.记住常用命令…

计算机(电脑)硬件组成基本介绍3

详细介绍的计算机(电脑)硬件组成.重要接口SATA连接大容量存储设备的SATA接口SATA (Serial ATA)接口即串行ATA,它是目前硬盘采用的一种新型的接口类型。SATA接口主要采用连续串行的方式传输数据,这样在同一时间点内只会有1位数据传输,此做法能减小接口的针脚数目,用4个针…

机器学习-保险花销预测笔记+代码

读取数据 import numpy as np import pandas as pddatapd.read_csv(rD:\人工智能\python视频\机器学习\5--机器学习-线性回归\5--Lasso回归_Ridge回归_多项式回归\insurance.csv,sep,) data.head(n6) EDA 数据探索 import matplotlib.pyplot as plt %matplotlib inlineplt.hi…

计算机(电脑)硬件组成基本介绍1

详细介绍的计算机(电脑)硬件组成。目录目录操作系统与硬件及应用程序软件的关系电脑各个设备之间关系 如何评价一台电脑? 通过CPU型号看性能 通过 CPU 主频评价 通过内存容量评价 通过显卡芯片及显存容量评价 通过显示器评价 中央处理器 存储器 输入设备 输出设备 接口…

20.Nacos集群搭建

模拟Nacos三个节点&#xff0c;同一个ip,启动三个不同的端口&#xff1a; 节点 nacos1, 端口&#xff1a;8845 节点 nacos2, 端口&#xff1a;8846 节点 nacos3, 端口&#xff1a;8847 1.搭建数据库&#xff0c;初始化数据库表结构 这里我们以单点的数据库为例 首先新建一…