unity android sd卡路径,一、文件与路径——2、unity路径特点写法和文件读写全攻略...

1、Unity中各路径和目录的对应关系

e46ea0ac1480

image.png

其中,安卓中的路径是有两种分支的

e46ea0ac1480

image.png

在打包面板中,有个Write Access

当我们选择Internal Only就是表示沙盒路径,/data/data/com.xxx.xxx/

对应的Android方法为 getFilesDir()

当我们选择SDCard时就表示存储到SD卡上,: /storage/emulated/0/Android/data/com.example.myapplication/files

2、各个路径的特点

Resources

是作为一个Unity的保留文件夹出现的,也就是如果你新建的文件夹的名字叫Resources,那么里面的内容在打包时都会被无条件的打到发布包中。

特点:

只读,即不能动态修改。所以想要动态更新的资源不要放在这里。

会将文件夹内的资源打包集成到.asset文件里面。因此建议可以放一些Prefab,因为Prefab在打包时会自动过滤掉不需要的资源,有利于减小资源包的大小。

资源读取使用Resources.Load()。

任何平台都可以用File读取

StreamingAssets

StreamingAssets和Resources很像。同样作为一个只读的Unity3D的保留文件夹出现。不过两者也有很大的区别,那就是Resources文件夹中的内容在打包时会被压缩和加密。而StreamingAsset文件夹中的内容则会原封不动的打入包中,因此StreamingAssets主要用来存放一些二进制文件。在任何平台中总可以统一使用Application.streamingAssetsPath 属性来获得这一文件夹路径。

特点:

PC端可读写,移动端只读不可写。

主要用来存放二进制文件,配置文件。

注意,在Android中,StreamingAssets中的文件包含在一个.jar压缩文件(基本上与标准的zip为统一格式)中,所以移动端时只能用过UnityWebRequest类来读取。在PC下,可以用File类API(如File.ReadAllText)读写StreamingAssets文件夹中的文件;在IOS和Android平台下,不能用File类API读取。

任何平台都可以用www方式异步读取该文件夹内容。PC和IOS平台下,读取路径必须加上"file://",而安卓不需要。

在IOS和Android下,还能用AssetBundle.LoadFromFile来同步读取数据。

PersistentDataPath

这个路径下是可读写。而且在IOS上就是应用程序的沙盒,但是在Android可以是程序的沙盒,也可以是sdcard。并且在Android打包的时候,ProjectSetting页面有一个选项Write Access,可以设置它的路径是沙盒还是sdcard。

特点:

-可读写,不过只能运行时才能写入或者读取。 提前将数据存入这个路径是不可行的。

无内容限制。你可以从 StreamingAsset 中读取二进制文件或者从 AssetBundle 读取文件来写入 PersistentDataPath 中。

写下的文件,可以在电脑上查看。同样也可以清掉。

可以使用UnityWebRequest类来读取。

可以用File类API(如File.ReadAllText)读写PersistentDataPath文件夹中的文件(安卓下唯一可以用File类的路径)

Application.DataPath

注意移动端是没有访问权限的

3、Unity文件的读写方式

几个文件操作类介绍

1、File类和FileInfo类的介绍:

File类和FileInfo类都是提供用于创建、复制、删除、移动和打开文件的方法,一个是静态的,一个是实例方法。简单来说,就是Flie类可以直接通过类名调用其中的某些函数,而FileInfo类需要先实例化一个对象,再通过对象调用函数。一般来说,如果是对文件进行少量的操作,则建议用File类,如果是对文件进行大量的存取操作,建议用FileInfo类,具体原因参照这 。 这里是官方的文档,File类, FileInfo类。

2、FileStream类和StreamWriter,StreamReader类的简单介绍:

FileStream类是一个操作类,FileStream 对象表示在磁盘或网络路径指向文件的流,这个类提供了在文件中读写字节的方法。简单来说就是这个Filestream这个文件流对 .txt等文件读写内容时需要使用的一个工具。如果File类是一个总的文件的话,那么fileStream类就是对文件进行操作的笔。 FileStream类和StreamWriter,StreamReader类的区别在于FileStream类操作的是字节和字节数组,而StreamWriter等类操作的是字符数据。StreamWriter类操作的只能是文本类型的,而FileStream类的对象可以是任何类型的。操作文本的话用StreamWriter等比较方便。

下面是用File和FileInfo两种方式去创建文件,以及用StreamWriter写文件的方法

File方式

using UnityEngine;

using System.Collections;

using System.Collections.Generic;

using System.IO;

public class FileOperate : MonoBehaviour {

public void WriteFileByLine(string file_path,string file_name,string str_info)

StreamWriter sw;

if(!File.Exists(file_path+"//"+file_name))

sw=File.CreateText(file_path+"//"+file_name);//创建一个用于写入 UTF-8 编码的文本

Debug.Log("文件创建成功!");

else

sw=File.AppendText(file_path+"//"+file_name);//打开现有 UTF-8 编码文本文件以进行读取

sw.WriteLine(str_info);//以行为单位写入字符串

sw.Close ();

sw.Dispose ();//文件流释放

void Start()

WriteFileByLine (Application.persistentDataPath,"my_newfile.txt","信息");

FileInfo方式

public void WriteFileByLine(string file_path,string file_name,string str_info)

StreamWriter sw;

FileInfo file_info = new FileInfo (file_path+"//"+file_name);

if(!file_info.Exists)

sw=file_info.CreateText();//创建一个用于写入 UTF-8 编码的文本

Debug.Log("文件创建成功!");

else

sw=file_info.AppendText();//打开现有 UTF-8 编码文本文件以进行读取

sw.WriteLine(str_info);

sw.Close ();

sw.Dispose ();//文件流释放

4、Unity路径解疑

上面了解各个路径的特性,读写方式,但是还有一个经常容易犯错的地方,就是路径的写法。

Unity3D关于路径资源的调用分为绝对路径和相对路径,

绝对路径

windows下:

path = "file://D:\TestFile\Cat\" + Number + ".png";

这种写法,因为斜杠需要转移,所以这里是双斜杠,不然报语法错误,有些时候没写双斜杠但又不报语法错,但是路径是错误的,就很难发现问题。

所以建议用另外一种写法:

@"file:///D:\TestFile\Cat" + Number + ".png";或者@"file://D:\TestFile\Cat" + Number + ".png";

file后面跟三个斜杠或者两个斜杠都行。

安卓下:

path ="jar:file://"+PersistentDataPath(示例)+ Number + ".png";

注:因为在安卓下对unity来说也只有PersistentDataPath,StreamingAssets这几个路径是可用的,通常不会这么使用,可以忽略,而且绝对路径限制大,一般采用相对路径。

相对路径

PC上:

url = Application.persistentDataPath + "/mydir/qq.txt";

或者

string path= Path.Combine(Application.persistentDataPath, fillName);

安卓下:

"file://" + Application.streamingAssetsPath + "\TestFile\Cat\" + Number + ".png";

"file://" + Application.PersistentDataPath+ "\TestFile\Cat\" + Number + ".png";

或者"file://" + Path.Combine(Application.persistentDataPath, fillName);

总之,路径写法的东西,不行就多是一两次就好了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/529932.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

html 图片行内剧中,HTML入门(转义字符、行内样式和块级元素、定位、锚点、跑马灯标签、图片标签、表格标签的讲解)...

一、转义字符由特殊字符包裹的文本 会当做标签去解析对应不换行空格对应全角空格 em是字体排印学的计量单位&#xff0c;相当于当前指定的点数。其占据的宽度正好是1个中文宽度&#xff0c;而且基本上不受字体影响。<对应<>对应>二、行内元素和块级元素1.块级标签默…

html scale方法的作用,HTML Canvas scale() 方法

实例绘制矩形&#xff0c;放大到 200%&#xff0c;然后再次绘制矩形&#xff1a;YourbrowserdoesnotsupporttheHTML5canvastag.JavaScript&#xff1a;var cdocument.getElementById("myCanvas");var ctxc.getContext("2d");ctx.strokeRect(5,5,25,15);ctx…

html屏幕输出笔记本,笔记本怎样外接显示器 笔记本外接显示器方法【详解】

摘要&#xff1a;笔记本电脑怎样外接显示器?一些用户用惯了大屏台式电脑的朋友&#xff0c;改用笔记本玩游戏&#xff0c;看电影等开始会很不习惯&#xff0c;由于笔记本的屏幕与键盘相比台式机要小上一大截。如果身边有显示器或者液晶电视的话&#xff0c;不妨动手体验下笔记…

江陵中学2021高考成绩查询,2021高考序幕拉开 荆州38080名考生赴考

十年寒窗磨一剑&#xff0c;只待今朝问鼎时&#xff0c;6月7日上午&#xff0c;2021年全国高考正式拉开序幕&#xff0c;荆州3.8万余名考生迎来人生大考。上午8点&#xff0c;在湖北省沙市中学考点周围&#xff0c;不少身着红色送考服的班主任们正在给考生们发放准考证&#xf…

html怎么播放下一首,javascript – HTML5音频播放列表 – 第一个结束后如何播放第二个音频文件?...

这是一个JSLinted,不引人注目的Javascript示例,演示如何处理和使用结束的mediaevent.在您的特定情况下,您将触发在您的结束事件处理程序中播放第二个音频文件.单击播放列表中的项目开始播放.一个音频结束后,下一个音频开始.标记&#xff1a;(注意,有意避免< li>元素之间的…

排球制作html,MAYA打造排球建模教程

这篇教程向悠悠之家的朋友们介绍用MAYA打造排球模型的过程&#xff0c;制作很简单&#xff0c;希望对刚学习MAYA建模的朋友们有所帮助&#xff0c;我们先看看最终的效果图&#xff1a;你们一定学过很多创建一个球的技巧&#xff0c;但在这个入门教学里面&#xff0c;我们将要学…

北大计算机系统结构学硕,转自包云刚,希望的原野 最近几个月参加了计算所、北大、上海交大多位计算机系统结构硕士与博士的答辩,说几点体会: ① 高水平国际论文越来越多。简单... - 雪球...

来源&#xff1a;雪球App&#xff0c;作者&#xff1a; 逍遥剑99&#xff0c;(https://xueqiu.com/1732900127/153778925)最近几个月参加了计算所、北大、上海交大多位计算机系统结构硕士与博士的答辩&#xff0c;说几点体会&#xff1a;① 高水平国际论文越来越多。简单统计了…

计算机主机箱前后都有什么,目前四种热门的主机机箱设计都有哪些优缺点?

在DIY里面机箱算是最没技术含量的产品之一&#xff0c;不过它却是与DIYer接触时间最长的东西。气味大师每天都会按下机箱开机键&#xff0c;也会空余时间瞄上几眼。机箱确实是对DIY影响最大的产品之一&#xff0c;今天我来盘点一下2018年见过的几个主流机箱设计方案。说是机箱设…

微型计算机硬盘接口主要分为,北京交通大学微机原理与接口技术_期末复习题_图文...

北京交通大学微机原理与接口技术_期末复习题_图文更新时间&#xff1a;2017/1/26 18:34:00 浏览量&#xff1a;1285 手机版“微机原理与接口技术”2008年期末考试复习题1. 微机系统的硬件由哪几部分组成&#xff1f;答&#xff1a;三部分&#xff1a;微型计算机(微处理器&…

计算机自然语言的中国科学家,中科院教授王斌加入小米 任自然语言处理首席科学家...

王斌新浪科技讯 8月28日上午消息&#xff0c;小米新经济研究中心发布微信文章称&#xff0c;中国科学院信息工程研究所研究员、博士生导师王斌已于8月20日正式加入小米集团&#xff0c;任AI实验室自然语言处理(Natural Language Processing&#xff0c;NLP)首席科学家&#xff…

springcloud 相同服务名_浅谈分布式与微服务

分布式和微服务是什么关系&#xff1f;简单来说&#xff0c;分布式和微服务的概念比较相似&#xff0c;分布式属于微服务。但是分布式和微服务在架构、作用和粒度上有所区别。因此&#xff0c;两者的关系是既相互联系又相互区别。本文主要带大家认识分布式和微服务&#xff0c;…

html div 子元素 过多 卡顿,CSS不定高元素transition动画的解决方案

CSS不定高元素transition动画的解决方案类别&#xff1a; 技术CSS时间&#xff1a;2019-07-27 23:41:35字数&#xff1a;3297版权所有&#xff0c;未经允许&#xff0c;请勿转载&#xff0c;谢谢合作~### 前言CSS中transition可以方便的实现我们的过渡动画效果&#xff0c;但并…

bat 变量 文件内容第一行_VBA基础入门(38)FSO生成bat文件后执行的实例

1.首先&#xff0c;我们回顾下FSO是什么&#xff1f;文件系统对象FSO的英文全称是File System Object &#xff0c;这种对象模型提出了有别于传统的文件操作语句处理文件和文件夹的方法。通过采用object.method这种在面向对象编程中广泛使用的语法&#xff0c;将一系列操作文件…

HTML5废除元素,HTML5 与 HTML4 的区别(2) - 新增的元素和废除的元素

新增的结构元素在 HTML5 中&#xff0c;新增了以下与结构相关的元素&#xff1a;section元素section 元素表示页面中的一个内容区块&#xff0c;比如章节、页眉、页脚或页面中的其他部分。它可以与h1、h2、h3、h4、h5、h6等元素结合起来使用&#xff0c;标识文档结构。HTML5 中…

ps怎么更改背景图层大小_PhotoShop处理图层的一些技巧方法、PS图层处理教程

一、了解图层以及为什么它们如此有用。1.在“图层”面板中查看和选择图层2.层包含组成分层文件的图像&#xff0c;文本或对象。它们使您可以在一层上移动&#xff0c;编辑和使用内容&#xff0c;而不会影响其他层上的内容。3.图层在“ 图层”面板中按堆栈排列&#xff0c;该面板…

zabbix计算型监控项函数last_zabbix 自定义key类型之计算(Calculated items)-阿里云开发者社区...

计算类型的key定义主要是根据已定义过的key值来计算的。例如创建一个计算linux服务器内存实际使用大小的监控项(计算方法为&#xff1a;vm.memory.size[total]-vm.memory.size[cached]-vm.memory.size[free])&#xff0c;方法如下&#xff1a;1、在模板中或是主机中选择监控项-…

使用计算机画画需要什么软件,专业电脑绘画用的是什么工具?

满意答案srCDG3SL62013.11.13采纳率&#xff1a;57% 等级&#xff1a;12已帮助&#xff1a;11125人电脑硬件配置(CPU,内存&#xff0c;显卡等)越高&#xff0c;绘制大图时&#xff0c;软件不会卡。就会画的很流畅。特别是Painter&#xff0c;模拟自然画笔越真实&#xff0c;…

中如何移动物体在画面中的位置_组合柜摆在客厅中什么位置最旺运?客厅中,财位是如何确定的?...

组合柜摆在客厅中什么位置最旺运&#xff1f;组合柜在风水中的重要性不如沙发&#xff0c;但要注意的宜忌事项也有很多。风水上讲高者为山&#xff0c;低者为水&#xff0c;有高有低&#xff0c;有山有水&#xff0c;才符合风水原理。在客厅中&#xff0c;低的沙发是水&#xf…

计算机概论在线阅读,计算器概论 or 计算机概论

计算机硬件的五大单元输入单元、输出单元、CPU内部控制单元、算数逻辑单元、主存储器。中央处理器 CPU Central Processing UnitCPU 的种类精简指令集 Reduced Instruction Set Computing, RISCSun SPARCIBM Power Architecture复杂指令集 Complex Instruction Set Comp…

螺旋天线有方向性吗_螺旋天线方向图

luoxuan13度.zip.zip我画的二臂螺旋天线同轴电缆馈电&#xff0c;得到的方向图是酒杯形状的&#xff0c;而不是半球行的&#xff0c;修改了好多次参数都是这样&#xff0c;这可如何是好&#xff0c;我的模型有问题么&#xff1f;还是哪里出了问题&#xff0c;请帮忙。怎么没人帮…