public void ApplyMailTextModify() { using (var fileStream = OpenScript(File.Open("C:/Users/mike/Desktop/SteinsGateELITE/_mail.scx", FileMode.Open))) { SC3Module module = SC3Module.Load(fileStream); var modTextFile = new StreamReader("C:/dev/sg_kor_proj/sge-script/_mail.scx.txt"); foreach (var stringHandle in module.StringTable) { var text = modTextFile.ReadLine(); //Debug.WriteLine(stringHandle.Resolve()); //Debug.WriteLine(text); if (text != null) { module.UpdateString(stringHandle.Id, SC3String.Deserialize("aa")); } } module.ApplyPendingUpdates(); using (var fileStream2 = File.Create("C:/Users/mike/Desktop/extractTest/_mail.scx")) { fileStream.Seek(0, SeekOrigin.Begin); fileStream.CopyTo(fileStream2); } modTextFile.Close(); } }
public void ApplyTextModify() { var archive = ZipFile.OpenRead("Data/SteinsGateELITE.zip"); foreach (var entry in archive.Entries) { using (var fileStream = OpenScript(entry)) { SC3Module module = null; try { module = SC3Module.Load(fileStream); } catch { Debug.WriteLine("#### open file Error : " + entry.FullName); continue; } Debug.WriteLine("#### " + entry.FullName); var modTextFile = new StreamReader("D:/dev/sge-script/" + entry.FullName + ".txt"); foreach (var stringHandle in module.StringTable) { var text = modTextFile.ReadLine(); //Debug.WriteLine("orig : " + stringHandle.Resolve()); //Debug.WriteLine("targ : " + text); if (text != null) { module.UpdateString(stringHandle.Id, SC3String.Deserialize(text)); } } module.ApplyPendingUpdates(); using (var fileStream2 = File.Create("C:/Users/jpkim/Desktop/script_orig/" + entry.FullName)) { fileStream.Seek(0, SeekOrigin.Begin); fileStream.CopyTo(fileStream2); } modTextFile.Close(); } } }