/// <summary> /// エントリーの追加。 /// </summary> /// <param name="entry">エントリー</param> public void AddEntry(CrsTransDataEntry entry) { if (this.Items.ContainsKey(entry.TranslationId)) { throw new Exception($"Duplicate key({entry.TranslationId})."); } else { this.Items.Add(entry.TranslationId, entry); } }
/// <summary> /// 言語データエントリーのクローンの作成 /// </summary> /// <returns>言語データエントリーのクローン</returns> private CrsTransDataEntry Clone() { var entry = new CrsTransDataEntry(); entry.HumanlyReadableDate = this.HumanlyReadableDate; entry.LastModificationTicks = this.LastModificationTicks; entry.TranslationId = this.TranslationId; entry.TranslationText = this.TranslationText; return(entry); }
/// <summary> /// 言語ファイルを読み込み、言語ファイル辞書を作成する。 /// </summary> /// <param name="br">BinaryReader</param> public void Read(BinaryReader br) { var entryCount = br.ReadInt32(); for (var i = 0; i < entryCount; i++) { var entry = new CrsTransDataEntry(); entry.Read(br); this.AddEntry(entry); } }
/// <summary> /// 言語データエントリーを追加する。 /// </summary> /// <param name="fileName">ファイル名</param> /// <param name="assetName">アセット名</param> /// <param name="entry">言語データエントリー</param> public void AddEntry(string fileName, string assetName, CrsTransDataEntry entry) { if (this.Items.ContainsKey(assetName)) { var dataFile = this.Items[assetName]; dataFile.AddEntry(entry); } else { var dataFile = new CrsTransDataFile(fileName, assetName); dataFile.AddEntry(entry); this.Items.Add(dataFile.AssetName, dataFile); } }