/// <summary> /// Journal 클래스 엔트리를 텍스트 파일로 출력 /// </summary> /// <example> /// <code> /// var jnl = new Journal(); /// var p = new Persistence(); /// p.SaveToFile(jnl, @"/tmp/entries.txt") /// </code> /// </example> /// <exception cref="System.AccessViolationException">Thrown when .... </exception> /// <param name="journal"></param> /// <param name="filename">DeePattern.SLID.SRP.Correctness.Journal</param> /// <param name="overwrite"></param> public void SaveToFile(DeePattern.SLID.SRP.Correctness.Journal journal, string filename, bool overwrite = false) { if (overwrite || !File.Exists(filename)) { File.WriteAllText(filename, journal.ToString()); } }
public void Test_Persistence_SaveToCsvFile() { // Journal 클래스를 생성하고 이를 Persistence 객체를 통해 파일로 출력 var jnl = new DeePattern.SLID.SRP.Correctness.Journal(); jnl.AddEntry("Entry 1"); jnl.AddEntry("Entry 2"); jnl.AddEntry("Entry 3"); jnl.AddEntry("Entry 4"); jnl.AddEntry("Entry 5"); var per = new DeePattern.SLID.SRP.Correctness.Persistence(); per.SaveToCsvFile(jnl, @"C:\ProgramData\test.csv", true); }
/// <summary> /// Journal 클래스의 엔트리를 CSV 파일로 출력 /// </summary> /// <param name="journal"></param> /// <param name="filename"></param> /// <param name="overwrite"></param> public void SaveToCsvFile(DeePattern.SLID.SRP.Correctness.Journal journal, string filename, bool overwrite = false) { StringBuilder sb = new StringBuilder(); foreach (KeyValuePair <int, string> kvp in journal.Entries) { sb.Append($"{kvp.Key}, {kvp.Value}{Environment.NewLine}"); } if (overwrite || !File.Exists(filename)) { File.WriteAllText(filename, sb.ToString()); } }