分享

1.1.1 dataPath属性:数据文件路径

 雪柳花明 2016-11-07

基本语法public static string dataPath { get; }

功能说明此属性用于返回程序的数据文件所在文件夹的路径(只读)。返回路径为相对路径,不同游戏平台的数据文件保存路径不同,具体如下所示。

Unity Editor:<工程文件夹所在路径>/Assets。

Mac player:<应用程序路径>/Contents。

iPhone player:<应用程序路径>/<AppName.app>/Data。

Win player:<包含可执行文件的文件夹路径>/Data。

Web player:播放器数据文件夹的绝对路径(没有实际的数据文件名称)。

Flash:播放器数据文件夹的绝对路径(没有实际的数据文件名称)。

与此属性功能相近的属性有persistentDataPath、streamingAssetsPath和temporary- CachePath,它们的具体功能如下所示。

persistentDataPath:此属性用于返回一个持久化数据存储目录的路径(只读),可以在此路径下存储一些持久化的数据文件。对于同一平台,在不同程序中调用此属性时,其返回值是相同的,但是在不同的运行平台下,其返回值会不一样。

streamingAssetsPath:此属性用于返回流数据的缓存目录,返回路径为相对路径,适合设置一些外部数据文件的路径。

temporaryCachePath:此属性用于返回一个临时数据的缓存目录(只读)。对于同一平台,在不同程序中调用此属性时,其返回值是相同的,但是在不同的运行平台下,其返回值是不一样的。

实例演示以下代码演示了4种不同路径的属性输出值:
using UnityEngine;
using System.Collections;

public class DataPath_ts : MonoBehaviour
{
    void Start()
    {
        //4种不同的路径,都为只读
        //dataPath和streamingAssetsPath的路径位置一般是相对程序的安装目录位置
        //persistentDataPath和temporaryCachePath的路径位置一般是相对所在系统的固定位置
        Debug.Log("dataPath:" + Application.dataPath);
        Debug.Log("persistentDataPath:" + Application.persistentDataPath);
        Debug.Log("streamingAssetsPath:" + Application.streamingAssetsPath);
        Debug.Log("temporaryCachePath:" + Application.temporaryCachePath);
    }
}

在这段代码中,分别打印出了4种不同的路径模式,其中dataPath和streamingAssets- Path这两个属性的返回值一般是相对于程序安装目录的位置。由于是相对路径,这两个属性非常适用于在多平台移植中设置要读取的外部数据文件的路径。在第15章的综合实例中,就用到了dataPath这个属性。而persistentDataPath和temporaryCachePath这两个属性的返回值一般是程序所在平台的固定位置,对于不同的平台,其位置是不一样的,适合存放程序运行过程中产生的一些数据文件。图1-1是程序在我电脑中的运行输出,从输出结果可以看出这4种属性的不同路径返回值。

 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多