private void ExportButton_Click(object sender, RoutedEventArgs e) { var dlg = new Microsoft.Win32.SaveFileDialog(); dlg.FileName = "accounts" + DateTime.Now.ToString("YYYYmmDD"); // Default file name dlg.DefaultExt = ".csv"; // Default file extension dlg.Filter = "Text documents (.csv)|*.csv"; // Filter files by extension Nullable<bool> result = dlg.ShowDialog(); if (!result.HasValue || !result.Value) return; string filename = dlg.FileName; using (CsvWriter writer = new CsvWriter()) { writer.WriteCsv(csvFile, filename); } }
public static void SetMappers(List<Mapper> mappers) { var csvFile = new CsvFile(); csvFile.Headers.Add("RegexPattern"); csvFile.Headers.Add("Category"); foreach (var mapper in mappers) { var record = new CsvRecord(); record.Fields.Add(mapper.RegexPattern); record.Fields.Add(mapper.Category); csvFile.Records.Add(record); } using (CsvWriter writer = new CsvWriter()) writer.WriteCsv(csvFile, "t"+path); File.Delete(path); File.Move("t" + path, path); }
public void CsvWriter_WriteDataTableToString() { if (File.Exists(FilePath)) File.Delete(FilePath); DataTable table = new DataTable(); using (CsvReader reader = new CsvReader(Encoding.Default, TEST_DATA_5)) { table = reader.ReadIntoDataTable(); } string content = string.Empty; using (CsvWriter writer = new CsvWriter()) { content = writer.WriteCsv(table, Encoding.Default); } File.Delete(FilePath); Assert.IsTrue(string.Compare(content, TEST_DATA_5) == 0); }
public void CsvWriter_WriteDataTableToStream() { string content = string.Empty; using (MemoryStream memoryStream = new MemoryStream()) { DataTable table = new DataTable(); using (CsvReader reader = new CsvReader(Encoding.Default, TEST_DATA_5)) { table = reader.ReadIntoDataTable(); } using (CsvWriter writer = new CsvWriter()) { writer.WriteCsv(table, memoryStream); using (StreamReader reader = new StreamReader(memoryStream)) { content = reader.ReadToEnd(); } } } Assert.IsTrue(string.Compare(content, TEST_DATA_5) == 0); }
public void CsvWriter_WriteDataTableToFile() { if (File.Exists(FilePath)) File.Delete(FilePath); DataTable table = new DataTable(); using (CsvReader reader = new CsvReader(Encoding.Default, TEST_DATA_5)) { table = reader.ReadIntoDataTable(); } using (CsvWriter writer = new CsvWriter()) { writer.WriteCsv(table, FilePath); } CsvFile csvFile = CreateCsvFileFromDataTable(table); VerifyTestData5(csvFile.Headers, csvFile.Records); File.Delete(FilePath); }
public void CsvWriter_WriteCsvFileObjectToString() { CsvFile csvFile = new CsvFile(); csvFile.Populate(true, TEST_DATA_5); string content = string.Empty; using (CsvWriter writer = new CsvWriter()) { content = writer.WriteCsv(csvFile, Encoding.Default); } Assert.IsTrue(string.Compare(content, TEST_DATA_5) == 0); }
public void CsvWriter_WriteCsvFileObjectToStream() { string content = string.Empty; using (MemoryStream memoryStream = new MemoryStream()) { CsvFile csvFile = new CsvFile(); csvFile.Populate(true, TEST_DATA_5); using (CsvWriter writer = new CsvWriter()) { writer.WriteCsv(csvFile, memoryStream); using (StreamReader reader = new StreamReader(memoryStream)) { content = reader.ReadToEnd(); } } } Assert.IsTrue(string.Compare(content, TEST_DATA_5) == 0); }
public void CsvWriter_WriteCsvFileObjectToFile() { if (File.Exists(FilePath)) File.Delete(FilePath); CsvFile csvFile = new CsvFile(); csvFile.Populate(true, TEST_DATA_5); using (CsvWriter writer = new CsvWriter()) { writer.WriteCsv(csvFile, FilePath); } csvFile = new CsvFile(); csvFile.Populate(FilePath, true); VerifyTestData5(csvFile.Headers, csvFile.Records); File.Delete(FilePath); }
public void CsvWriter_VerifyThatCarriageReturnsAreHandledCorrectlyInFieldValues() { CsvFile csvFile = new CsvFile(); csvFile.Headers.Add("header ,1"); csvFile.Headers.Add("header\r\n2"); csvFile.Headers.Add("header 3"); CsvRecord record = new CsvRecord(); record.Fields.Add("da,ta 1"); record.Fields.Add("\"data\" 2"); record.Fields.Add("data\n3"); csvFile.Records.Add(record); string content = string.Empty; using (CsvWriter writer = new CsvWriter()) { content = writer.WriteCsv(csvFile, Encoding.Default); } Assert.IsTrue(string.Compare(content, "\"header ,1\",\"header,2\",header 3\r\n\"da,ta 1\",\"\"\"data\"\" 2\",\"data,3\"\r\n") == 0); using (CsvWriter writer = new CsvWriter() { ReplaceCarriageReturnsAndLineFeedsFromFieldValues = false}) { content = writer.WriteCsv(csvFile, Encoding.Default); } Assert.IsTrue(string.Compare(content, "\"header ,1\",header\r\n2,header 3\r\n\"da,ta 1\",\"\"\"data\"\" 2\",data\n3\r\n") == 0); }
public void CsvFile_PopulateFromFileWithoutHeader() { CsvFile csvFile1 = new CsvFile(); using (CsvReader reader = new CsvReader(Encoding.Default, TEST_DATA_5)) { List<List<string>> records = new List<List<string>>(); while (reader.ReadNextRecord()) records.Add(reader.Fields); csvFile1 = CreateCsvFile(records[0], records[1]); } if (File.Exists(FilePath)) File.Delete(FilePath); using (CsvWriter writer = new CsvWriter()) { writer.WriteCsv(csvFile1, FilePath, Encoding.Default); } CsvFile file = new CsvFile(); file.Populate(FilePath, false); VerifyTestData5Alternative(file.Records); File.Delete(FilePath); }
private void exportCsv(string file) { CsvFile csvFile = new CsvFile(); IList<PatientData> allPatients = this.patComp.GetAllPatients(); //Haader CsvRecord header = new CsvRecord(); header.Fields.Add("ID"); header.Fields.Add("Nachname"); header.Fields.Add("Vorname"); header.Fields.Add("m/w"); header.Fields.Add("Geburtsdatum"); header.Fields.Add("Telefon"); header.Fields.Add("Datum Erstkontakt"); header.Fields.Add("Diagnosegruppe"); header.Fields.Add("Diagnose1"); header.Fields.Add("Diagnose2"); header.Fields.Add("Diagnose3"); header.Fields.Add("VorOP vor Erstkontakt"); header.Fields.Add("bisherige Therapie OP/Konservativ"); header.Fields.Add("Datum Erst-OP"); header.Fields.Add("Art Erst-OP"); header.Fields.Add("Anzahl weitere OP"); header.Fields.Add("op-pfl. Rezidiv nach (Erst)-OP ja/nein"); header.Fields.Add("Anzahl OP insgesamt"); header.Fields.Add("Datum Letzt-OP"); header.Fields.Add("Anzahl Visits insgesamt"); header.Fields.Add("Datum letzter Visit"); header.Fields.Add("Abgeschlossen"); header.Fields.Add("Besonderes"); csvFile.Records.Add(header); foreach (var pd in allPatients) { IList<VisitData> visits = this.patComp.GetVisitsByPatientID(pd.Id); IList<OperationData> ops = this.patComp.GetOperationsByPatientID(pd.Id); IList<DiagnoseGroupData> gds = this.patComp.FindDiagnoseGroupIdByPatientId(pd.Id); VisitData firstVisit = StaticUtilities.GetnThVisit(visits, 1); VisitData secondVisit = StaticUtilities.GetnThVisit(visits, 2); VisitData thirdVisit = StaticUtilities.GetnThVisit(visits, 3); VisitData lastVisit = StaticUtilities.GetnThVisit(visits, -1); OperationData firstOp = StaticUtilities.OldestOP(ops); OperationData lastOp = StaticUtilities.NewestOP(ops); StringBuilder sb = new StringBuilder(); foreach (DiagnoseGroupData dbgd in gds) { sb.Append(dbgd.ShortName).Append(", "); } if (sb.Length >= 2) { sb.Remove(sb.Length - 2, 2); } string diagnoseGroup = sb.ToString(); StringBuilder toolTipSB = new StringBuilder(); string firstVisitDateStr = (firstVisit == null) ? String.Empty : firstVisit.VisitDate.ToShortDateString(); string lastVisitDateStr = (lastVisit == null) ? String.Empty : lastVisit.VisitDate.ToShortDateString(); string firstOpDateStr = (firstOp == null) ? String.Empty : firstOp.Date.ToShortDateString(); string lastOpDateStr = (lastOp == null) ? String.Empty : lastOp.Date.ToShortDateString(); string firstVisitDiagnoses = (firstVisit == null) ? string.Empty : firstVisit.ExtraDiagnosis; string secondVisitDiagnoses = (secondVisit == null) ? string.Empty : secondVisit.ExtraDiagnosis; string thirdVisitDiagnoses = (thirdVisit == null) ? string.Empty : thirdVisit.ExtraDiagnosis; string performedFirstOP = (firstOp == null) ? string.Empty : firstOp.Performed; string performedLastOP = (lastOp == null) ? string.Empty : lastOp.Performed; CsvRecord dataLine = new CsvRecord(); dataLine.Fields.Add(pd.Id.ToString()); dataLine.Fields.Add(pd.FirstName); dataLine.Fields.Add(pd.SurName); dataLine.Fields.Add(pd.Sex.ToString()); dataLine.Fields.Add(pd.DateOfBirth.ToShortDateString()); dataLine.Fields.Add(pd.Phone); dataLine.Fields.Add(firstVisitDateStr); dataLine.Fields.Add(diagnoseGroup); dataLine.Fields.Add(firstVisitDiagnoses); dataLine.Fields.Add(secondVisitDiagnoses); dataLine.Fields.Add(thirdVisitDiagnoses); dataLine.Fields.Add("TODO"); dataLine.Fields.Add("TODO"); dataLine.Fields.Add(firstOpDateStr); dataLine.Fields.Add(performedFirstOP); dataLine.Fields.Add((ops.Count > 0) ? (ops.Count - 1).ToString() : ops.Count.ToString()); dataLine.Fields.Add("TODO"); dataLine.Fields.Add(ops.Count.ToString()); dataLine.Fields.Add(lastOpDateStr); dataLine.Fields.Add(visits.Count.ToString()); dataLine.Fields.Add(lastVisitDateStr); dataLine.Fields.Add(pd.Finished.ToString()); dataLine.Fields.Add("TODO"); csvFile.Records.Add(dataLine); } using (CsvWriter writer = new CsvWriter()) { writer.QuotesAlways = true; writer.Seperator = ";"; try { writer.WriteCsv(csvFile, file); } catch (Exception e) { MessageBox.Show("Could not write CSV File because:" + Environment.NewLine + e.Message); } } }