// CTOR public OutputFile(string filename, string path = null, bool addTimestamp = true, bool append = false) { if (path == null) { path = GFile.ExePath; } string pathname = GFile.GetDfCsvPathname(filename, path, addTimestamp, append); //m_writer = new StreamWriter(pathname, append); if (append) { m_writer = new StreamWriter(pathname, append: true); m_csv = new CsvWriter(m_writer); } else { m_writer = new StreamWriter(pathname, append: false); //string headers = this.CsvHeaders; //m_writer.WriteLine(headers); m_csv = new CsvWriter(m_writer); m_csv.WriteHeader <T>(); m_csv.NextRecord(); } }
// CTOR public InputFile(string filename, string path = null, bool addTimestamp = false) { string pathname; if (path == null) { pathname = Path.Combine(GFile.ExePath, filename); // this adds nothing to the filename } else { pathname = GFile.GetDfCsvPathname(filename, path, addTimestamp); // this automatically adds ".DF.csv" to the filename } try { m_reader = new StreamReader(pathname); m_csv = new CsvReader(m_reader); // TODO: FIX THE READING OF HEADERS AND SUBSEQUENT RECORDS!!! //string headers = this.CsvHeaders; //string headers = m_reader.ReadLine(); m_csv.Read(); m_csv.ReadHeader(); } catch (Exception ex) { Console.WriteLine("ERROR: {0}\nPress any key (Ctrl-C to exit)", ex.Message); Console.ReadKey(); } }