public void CanParseFailed1() { string text = "Id,Name" + Environment.NewLine + "0,Art"; CsvDoc doc = Csv.LoadText(text, true); Assert.IsTrue(doc.Columns.Contains("Id")); Assert.IsTrue(doc.Columns.Contains("Name")); Assert.AreEqual(doc.Get <string>(0, "Id"), "0"); Assert.AreEqual(doc.Get <string>(0, "Name"), "Art"); }
/// <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); }
public void CanParseCsvAndGetTypedVal() { string text = "'Id', 'Name', 'Desc'" + Environment.NewLine + "'0', 'Art', 'Art class'" + Environment.NewLine + "'1', 'Sports', 'all sports'"; CsvDoc doc = Csv.LoadText(text, true); Assert.IsTrue(doc.Columns.Contains("Id")); Assert.IsTrue(doc.Columns.Contains("Name")); Assert.IsTrue(doc.Columns.Contains("Desc")); Assert.AreEqual(doc.Get <string>(0, "Id"), "0"); Assert.AreEqual(doc.Get <string>(0, "Name"), "Art"); Assert.AreEqual(doc.Get <string>(0, "Desc"), "Art class"); Assert.AreEqual(doc.Get <string>(1, "Id"), "1"); Assert.AreEqual(doc.Get <string>(1, "Name"), "Sports"); Assert.AreEqual(doc.Get <string>(1, "Desc"), "all sports"); }
public void CanMapFromCsv() { var csv = LoadDataCsv(); var io = new ImportExportService <Conference>(); CsvDoc data = new CsvDoc(csv, false); var boolresult = io.LoadText(csv, "csv"); var result = boolresult.Item; Assert.AreEqual(result[0].Title, data.Get <string>(0, "Title")); Assert.AreEqual(result[0].StartDate.Date, DateTime.Today.Date); Assert.AreEqual(result[0].StartTime, new TimeSpan(21, 30, 0)); Assert.AreEqual(result[0].IsFree, true); Assert.AreEqual(result[0].MaxSeats, data.Get <int>(0, "MaxSeats")); Assert.AreEqual(result[0].Cost, 250); Assert.AreEqual(result[0].Url, data.Get <string>(0, "Url")); Assert.AreEqual(result[1].Title, data.Get <string>(1, "Title")); Assert.AreEqual(result[1].StartDate.Date, DateTime.Today.AddDays(4).Date); Assert.AreEqual(result[1].StartTime, new TimeSpan(11, 30, 0)); Assert.AreEqual(result[1].IsFree, false); Assert.AreEqual(result[1].MaxSeats, data.Get <int>(1, "MaxSeats")); Assert.AreEqual(result[1].Cost, 251); Assert.AreEqual(result[1].Url, data.Get <string>(1, "Url")); }