public static void Save(string fileName, TimeCalcSettings settings) { XmlSerializer SerializerObj = new XmlSerializer(typeof(TimeCalcSettings)); // Create a new file stream to write the serialized object to a file TextWriter WriteFileStream = new StreamWriter(fileName); SerializerObj.Serialize(WriteFileStream, settings); // Cleanup WriteFileStream.Close(); }
public static TimeCalcSettings Load(string fileName) { TimeCalcSettings retVal = null; XmlSerializer SerializerObj = new XmlSerializer(typeof(TimeCalcSettings)); if (File.Exists(fileName)) { FileStream ReadFileStream = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.Read); // Load the object saved above by using the Deserialize function retVal = new TimeCalcSettings(); retVal = (TimeCalcSettings)SerializerObj.Deserialize(ReadFileStream); // Cleanup ReadFileStream.Close(); } return(retVal); }
private void init(DateTime startTimePara, Boolean ignoreTempFile, Boolean useStartTimeOffset) { string fileName; fileName = @"WTO_setting.xml"; settings = TimeCalcSettings.Load(fileName); if (settings == null) { settings = new TimeCalcSettings(); TimeCalcSettings.Save(fileName, settings); } enableLogging = settings.EnableLogFile; if (settings.LogFileName.LastIndexOf('.') < 0) { settings.LogFileName += ".csv"; } if (settings.LogFileAddMonthYear) { logFileName = settings.LogFileName.Substring(0, settings.LogFileName.LastIndexOf('.')); logFileName += "_" + startTimePara.Year.ToString() + "_" + startTimePara.ToString("MM", System.Globalization.CultureInfo.InvariantCulture); logFileName += settings.LogFileName.Substring(settings.LogFileName.LastIndexOf('.')); } else { logFileName = settings.LogFileName; } startTime = startTimePara; if (useStartTimeOffset) { startTime -= TimeSpan.FromMinutes(settings.StartTimeOffsetMinutes); } CorrectionTime = new TimeSpan(); DateTime ob = new DateTime(); fileName = @"WTO_startTime.xml"; if (File.Exists(fileName) & !ignoreTempFile) { XmlSerializer SerializerObj = new XmlSerializer(typeof(DateTime)); FileStream ReadFileStream = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.Read); // Load the object saved above by using the Deserialize function startTime = (DateTime)SerializerObj.Deserialize(ReadFileStream); // Cleanup ReadFileStream.Close(); } if (ob.Date != startTime.Date) { XmlSerializer SerializerObj = new XmlSerializer(typeof(DateTime)); // Create a new file stream to write the serialized object to a file TextWriter WriteFileStream = new StreamWriter(fileName); SerializerObj.Serialize(WriteFileStream, startTime); // Cleanup WriteFileStream.Close(); } else { startTime = ob; } running = true; }