IEnumerator loadAndSaveAsset(string url) //下载网络模型并缓存到本地
{
WWW w = new WWW(url);
yield return w;
if (w.isDone)
{
byte[] model = w.bytes;
int length = model.Length;
//文件流信息
//StreamWriter sw;
Stream sw;
FileInfo t = new FileInfo(Application.persistentDataPath + "//" + "Model.assetbundle");
if (!t.Exists)
{
//如果此文件不存在则创建
sw = t.Create();
}
else
{
//如果此文件存在则打开
sw = t.OpenWrite();
}
sw.Write(model, 0, length);
//关闭流
sw.Close();
//销毁流
sw.Dispose();
}
}
从本地读取模型文件:
//读取本地的模型文件
IEnumerator LoadModelFromLocal()
{
string s = null;
#if UNITY_ANDROID
s = "jar:file://" + Application.persistentDataPath + "/" + "Model.assetbundle";
#elif UNITY_IPHONE
s = path+"/"+name;
#elif UNITY_STANDALONE_WIN || UNITY_EDITOR
s = "file://"+path+"/"+name;
#endif
WWW w = new WWW(s);
yield return w;
if (w.isDone)
{
Instantiate(w.assetBundle.mainAsset);
}
}
删除文件
void DeleteFile(string path, string name)
{
File.Delete(path + "//" + name);
}
FR:海涛高软(hunk Xu)