public static void AssertColumnData(CsvDoc doc, string column, int startingRowIndex, string expectedValue) { // Iterate over each cell in column. doc.ForEach(column, 0, (row, col, val) => { Assert.AreEqual(expectedValue, val); }); }
public static void AssertColumnDataDate(CsvDoc doc, string column, int startingRowIndex, DateTime startingValue, int dayIncrement) { // Iterate over each cell in column. doc.ForEach <DateTime>(column, 0, (row, col, val) => { Assert.IsTrue(startingValue.Date.CompareTo(val.Date) == 0); startingValue = startingValue.AddDays(dayIncrement); }); }
public static void AssertColumnDataInt(CsvDoc doc, string columnName, int startingRowIndex, int startingValue, int increment) { // Iterate over each cell in column. doc.ForEach <int>(columnName, 0, (row, col, val) => { Assert.AreEqual(startingValue, val); startingValue += increment; }); }
/// <summary> /// Run the application. /// </summary> public override BoolMessageItem Execute() { //<doc:example> // See CommonLibrary.UnitTests Source code for actual csv files. string text = GetSampleCsv(); CsvDoc csv = Csv.LoadText(text, true); // 1. Get cell at row 0, column 1 string cell0 = csv.Get <string>(0, 1); // 2. Get cell at row 0, column called "FilePath" string cell2 = csv.Get <string>(0, "FilePath"); // 3. Number of columns var colCount = csv.Columns.Count; // 4. Number of rows var rowCount = csv.Data.Count; // 5. Column name at index 2 var col2 = csv.Columns[1]; // 6. Get int id at row 2 var id = csv.Get <int>(2, 0); // 7. Iterate over all the cells in column named "Date" starting at row 0. csv.ForEach <DateTime>("Date", 0, (row, col, val) => { Console.WriteLine(string.Format("Row[{0}]Col[{1}] : {2}", row, col, val.ToString())); }); // 8. Get the csv data as a datatable. DataTable table = csv.ToDataTable("My_Sample_Data"); // 9. Iterate over rows / columns for (int row = 0; row < csv.Data.Count; row++) { for (int col = 0; col < csv.Columns.Count; col++) { string cellVal = csv.Data[row][col] as string; } } //</doc:example> return(BoolMessageItem.True); }