/// <summary> /// 订单编号标识文件+1 /// </summary> /// <param name="fileName"></param> /// <param name="num"></param> public void SaveToFile(string key, string fileName, int num) { try { FileReadWrite.Write(fileName, FileMode.Create, (fs) => { var buffer = BitConverter.GetBytes(num); fs.Write(buffer, 0, buffer.Length); }); if (num == 1) { //清除昨天的流水文件 Task.Factory.StartNew(() => { try { var delfileName = GetFileName(key, DateTime.Now.AddDays(-1)); delfileName = Path.Combine(CacheFilePath, delfileName); if (File.Exists(delfileName)) { File.Delete(delfileName); } } catch { } }); } } catch (Exception ex) { } }
private void SaveToFile(int serialNumber) { try { string fileName = string.Empty; //当天文件名,记录当前流水 if (SwiftNumberMode != SwiftNumberMode.Normal) { fileName = string.Format(FILENAMEFORMAT, Name, DateTime.Now.ToString(DateFormat)); } else { fileName = string.Format(FILENAMEFORMAT, Name, string.Empty); } fileName = Path.Combine(TempFilePath, fileName); FileReadWrite.Write(fileName, FileMode.Create, (fs) => { var buffer = BitConverter.GetBytes(serialNumber); fs.Write(buffer, 0, buffer.Length); }); var tempEvent = SwiftNumberChanged; if (tempEvent != null) { tempEvent(this, new SwiftNumberChangeEventArgs() { Name = Name }); } if (serialNumber == 1 && SwiftNumberMode != SwiftNumberMode.Normal) { //清除昨天的流水文件 Task.Factory.StartNew(() => { try { var delfileName = string.Format(FILENAMEFORMAT, Name, DateTime.Now.AddDays(-1).ToString(DateFormat)); delfileName = Path.Combine(TempFilePath, delfileName); if (File.Exists(delfileName)) { File.Delete(delfileName); } } catch { } }); } } catch (Exception e) { throw e; } }
public bool WriteGlobalParameter(GlobalParameter data, string filePath) { string content = LitJson.JsonMapper.ToJson(data); bool value = FileReadWrite.Write(filePath, content); if (value) { Debug.Log("Write Sucess:" + filePath); } else { Debug.LogError("Write Fail:" + filePath); } return(value); }
private static void MergeFile(string filePath) { DirectoryInfo direcotryInfo = Directory.CreateDirectory(filePath); FileInfo[] fileInfoArr = direcotryInfo.GetFiles("*.bytes", SearchOption.TopDirectoryOnly); List <PBConfigWriteFile> fileList = new List <PBConfigWriteFile>(); for (int i = 0; i < fileInfoArr.Length; ++i) { string fullName = fileInfoArr[i].FullName; BehaviorReadWrite readWrite = new BehaviorReadWrite(); BehaviorTreeData behaviorTreeData = readWrite.ReadJson(fullName); behaviorTreeData = RemoveInvalidParameter(behaviorTreeData); string content = LitJson.JsonMapper.ToJson(behaviorTreeData); byte[] byteData = System.Text.Encoding.Default.GetBytes(content); string fileName = System.IO.Path.GetFileNameWithoutExtension(fullName); if (byteData.Length <= 0) { Debug.LogError("无效得配置文件"); return; } PBConfigWriteFile skillConfigWriteFile = new PBConfigWriteFile(); skillConfigWriteFile.filePath = filePath; skillConfigWriteFile.byteData = byteData; fileList.Add(skillConfigWriteFile); Debug.Log("end mergeFile:" + filePath); } ByteBufferWrite bbw = new ByteBufferWrite(); bbw.WriteInt32(fileList.Count); int start = 4 + fileList.Count * (4 + 4); for (int i = 0; i < fileList.Count; ++i) { PBConfigWriteFile skillConfigWriteFile = fileList[i]; bbw.WriteInt32(start); bbw.WriteInt32(skillConfigWriteFile.byteData.Length); start += skillConfigWriteFile.byteData.Length; } for (int i = 0; i < fileList.Count; ++i) { PBConfigWriteFile skillHsmWriteFile = fileList[i]; bbw.WriteBytes(skillHsmWriteFile.byteData, skillHsmWriteFile.byteData.Length); } { string mergeFilePath = string.Format("{0}/StreamingAssets/Bina/BehaviorTreeConfig.bytes", Application.dataPath); if (System.IO.File.Exists(mergeFilePath)) { System.IO.File.Delete(mergeFilePath); AssetDatabase.Refresh(); } byte[] byteData = bbw.GetBytes(); FileReadWrite.Write(mergeFilePath, byteData); } AssetDatabase.Refresh(); }
public static void BeatchMergeAllFile() { string filePath = HSMManager.Instance.FilePath; DirectoryInfo dInfo = new DirectoryInfo(filePath); FileInfo[] fileInfoArr = dInfo.GetFiles("*.txt", SearchOption.TopDirectoryOnly); List <PBConfigWriteFile> fileList = new List <PBConfigWriteFile>(); for (int i = 0; i < fileInfoArr.Length; ++i) { string fullName = fileInfoArr[i].FullName; HSMReadWrite readWrite = new HSMReadWrite(); SkillHsmConfigHSMTreeData skillHsmData = readWrite.ReadJson(fullName); skillHsmData = FormatData(skillHsmData); HSMManager.Instance.CheckData(skillHsmData); string fileName = System.IO.Path.GetFileNameWithoutExtension(fullName); //skillHsmData.FileName = fileName; byte[] byteData = ProtoDataUtils.ObjectToBytes <SkillHsmConfigHSMTreeData>(skillHsmData); if (byteData.Length <= 0) { Debug.LogError("无效得配置文件"); return; } PBConfigWriteFile skillConfigWriteFile = new PBConfigWriteFile(); skillConfigWriteFile.filePath = filePath; skillConfigWriteFile.byteData = byteData; fileList.Add(skillConfigWriteFile); Debug.Log("end mergeFile:" + filePath); } ByteBufferWrite bbw = new ByteBufferWrite(); bbw.WriteInt32(fileList.Count); int start = 4 + fileList.Count * (4 + 4); for (int i = 0; i < fileList.Count; ++i) { PBConfigWriteFile skillConfigWriteFile = fileList[i]; bbw.WriteInt32(start); bbw.WriteInt32(skillConfigWriteFile.byteData.Length); start += skillConfigWriteFile.byteData.Length; } for (int i = 0; i < fileList.Count; ++i) { PBConfigWriteFile skillHsmWriteFile = fileList[i]; bbw.WriteBytes(skillHsmWriteFile.byteData, skillHsmWriteFile.byteData.Length); } { string mergeFilePath = Extend.GameUtils.CombinePath(Application.dataPath, "StreamingAssets", "Bina", "SkillHsmConfig.bytes"); //string.Format("{0}/StreamingAssets/Bina/SkillHsmConfig.bytes", Application.dataPath); // string.Format("{0}/MergeFile/SkillConfig.txt", path); if (System.IO.File.Exists(mergeFilePath)) { System.IO.File.Delete(mergeFilePath); AssetDatabase.Refresh(); } byte[] byteData = bbw.GetBytes(); FileReadWrite.Write(mergeFilePath, byteData); } }