public bool Load(string path) { // issue // android, webgl error if (!File.Exists(path)) { UnityEngine.Debug.LogError("[XAsset] File:Exists() return false."); return(false); } Clear(); name = path; using (var reader = new BinaryReader(File.OpenRead(path))) { var count = reader.ReadInt32(); for (var i = 0; i < count; i++) { var file = new VFile { Id = i }; file.Deserialize(reader); AddFile(file); } _pos = reader.BaseStream.Position; } Reindex(); return(true); }
public static List <VFile> LoadVersions(string filename, bool update = false) { var rootDir = Path.GetDirectoryName(filename); var data = update ? _updateData : _baseData; data.Clear(); using (var stream = File.OpenRead(filename)) { var reader = new BinaryReader(stream); var list = new List <VFile>(); var ver = reader.ReadInt32(); Debug.Log("LoadVersions:" + ver); var count = reader.ReadInt32(); for (var i = 0; i < count; i++) { var version = new VFile(); version.Deserialize(reader); list.Add(version); data[version.Name] = version; var dir = string.Format("{0}/{1}", rootDir, Path.GetDirectoryName(version.Name)); if (!Directory.Exists(dir)) { Directory.CreateDirectory(dir); } } return(list); } }