public void Test_Csv_To_Fixed() { using (var reader = new CsvAdapter()) { reader.FileName = Path.Combine(this.testDataPath, @"cd-Daten.txt"); reader.Enclosure = "\""; reader.Separator = ";"; using (var writer = new FixedTextAdapter()) { writer.FileName = Path.Combine(this.resultPath, "cd-Daten-Fixed.txt"); int lineCount = 0; reader.ReadData(30) .ForEach(x => { Console.WriteLine("Tablename=" + x.TableName + ", Count=" + x.Rows.Count); lineCount += x.Rows.Count; }) .Do(x => writer.WriteData(x)); } } // check var targetlineCount = File.ReadLines(this.resultPath + @"cd-Daten-Fixed.txt").Count(); Assert.AreEqual(97, targetlineCount); }
private static int RunExportCsv(CommandArgs.ExportCsvCommand cmd) { var doc = new XliffParser.XlfDocument(cmd.Xlf); var csv = new CsvAdapter() { CustomIdColumn = cmd.CustomIdColumn, IsCsvHeaderRequired = !cmd.NoHeader, IsLangColumnRequired = cmd.WithLanguage }; XlfDialect dialect = XlfDialect.Standard; if (cmd?.Dialect == "RCWinTrans11") { dialect = XlfDialect.RCWinTrans11; } else if (cmd?.Dialect == "MultilingualAppToolkit") { dialect = XlfDialect.MultilingualAppToolkit; } var stateFilter = string.IsNullOrWhiteSpace(cmd.Filter) ? null : cmd.Filter.Split(';').ToList(); var resTypeFilter = string.IsNullOrWhiteSpace(cmd.ResTypeFilter) ? null : cmd.ResTypeFilter.Split(';').ToList(); doc.Files.First().Export(cmd.Out, csv, stateFilter, resTypeFilter, dialect); return(0); }
public void Test_Formats_To_Obj_Conversion() { var watch = new Stopwatch(); using (var reader = new CsvAdapter()) { reader.FileName = Path.Combine(this.testDataPath, @"DataFormats.txt"); reader.Enclosure = "\""; reader.Separator = ";"; using (var writer = new FixedTextAdapter()) { writer.FileName = Path.Combine(this.resultPath, @"DataFormats-Fixed.txt"); watch.Start(); int lineCount = 0; reader.ReadDataAs <DataFormatTest>(30) .ForEach(x => { Console.WriteLine(x.ToString()); lineCount += 1; }) .Do(x => writer.WriteDataFrom <DataFormatTest>(x, false, 30)); watch.Stop(); Console.WriteLine("lineCount=" + lineCount + ", Time=" + watch.Elapsed); // check var targetlineCount = File.ReadLines(this.resultPath + @"DataFormats-Fixed.txt").Count(); Assert.AreEqual(6, targetlineCount); } } }
public static void Sample_Csv_To_Fixed() { string sampleDataPath = @"..\..\Samples\"; var watch = new Stopwatch(); using (var reader = new CsvAdapter()) { reader.FileName = sampleDataPath + @"cd-Daten.txt"; reader.Enclosure = "\""; reader.Separator = ";"; using (var writer = new FixedTextAdapter()) { writer.FileName = Path.Combine(Path.GetDirectoryName(reader.FileName), "cd-Daten-Fixed.txt"); watch.Start(); int lineCount = 0; reader.ReadDataAs <CdDaten>(30) .ForEach(x => { lineCount += 1; }) .Do(x => writer.WriteDataFrom <CdDaten>(x, false, 30)); watch.Stop(); Console.WriteLine("lineCount=" + lineCount + ", Time=" + watch.Elapsed); Console.ReadLine(); } } }
public static void Sample_ReadXml_WriteCsvs_Kunden() { string sampleDataPath = @"..\..\Samples\"; var watch = new Stopwatch(); using (var reader = new XmlAdapter()) { reader.FileName = sampleDataPath + @"kunden.xml"; reader.XPath = "/adre/kunde"; reader.ReadFormatter = new XmlToDataSetFormatter(); using (var writer = new CsvAdapter()) { writer.FileName = ""; watch.Start(); int lineCount = 0; reader.ReadData(30) .ForEach(x => { writer.FileName = sampleDataPath + x.TableName + ".csv"; Console.WriteLine("Tablename=" + x.TableName + ", Count=" + x.Rows.Count); lineCount += x.Rows.Count; }) .Do(x => writer.WriteData(x)); watch.Stop(); Console.WriteLine("lineCount=" + lineCount + ", Time=" + watch.Elapsed); Console.ReadLine(); } } }
public static void Sample_ReadExcel_WriteCsv() { string sampleDataPath = @"..\..\Samples\"; var watch = new Stopwatch(); using (var reader = new ExcelNativeAdapter()) { reader.FileName = sampleDataPath + @"cd-Daten.xls"; reader.SheetName = "Tabelle1"; reader.Connect(); using (var writer = new CsvAdapter()) { writer.FileName = Path.Combine(sampleDataPath, "cd-Daten_FromXls.csv"); watch.Start(); int lineCount = 0; reader.ReadData(30) .ForEach(x => { Console.WriteLine("Tablename=" + x.TableName + ", Count=" + x.Rows.Count); lineCount += x.Rows.Count; }) .Do(x => writer.WriteData(x, false)); watch.Stop(); Console.WriteLine("lineCount=" + lineCount + ", Time=" + watch.Elapsed); Console.ReadLine(); } reader.Disconnect(); } }
public static void Sample_ReadXml_WriteCsv_Address() { string sampleDataPath = @"..\..\Samples\"; var watch = new Stopwatch(); using (var reader = new XmlAdapter()) { reader.FileName = sampleDataPath + @"GetAddressResponse.xml"; reader.XPath = "/GetAddressResponse/GetAddressResult/result/address"; using (var writer = new CsvAdapter()) { writer.FileName = sampleDataPath + @"flatxml.csv"; watch.Start(); int lineCount = 0; reader.ReadData(30) .ForEach(x => { Console.WriteLine("Tablename=" + x.TableName + ", Count=" + x.Rows.Count); lineCount += x.Rows.Count; }) .Do(x => writer.WriteData(x)); watch.Stop(); Console.WriteLine("lineCount=" + lineCount + ", Time=" + watch.Elapsed); Console.ReadLine(); } } }
private void ReadFile() { if (File.Exists(this.pathFile)) { if (this.dataTable == null) { InitializeDataTable(); } else { this.dataTable.Clear(); } csvAdapter = new CsvAdapter(this.pathFile, this.dataTable, constantProgramName); csvAdapter.ReadFile(); } else { if (this.dataTable != null) { this.dataTable.Clear(); } //this.csvAdapter = null; //this.dataTable = null; } }
public void Test_Csv_Excel_Csv() { using (var csvReader = new CsvAdapter()) using (var excelWriter = new ExcelNativeAdapter()) using (var excelReader = new ExcelNativeAdapter()) using (var csvWriter = new CsvAdapter()) { csvReader.Enclosure = "\""; csvReader.FileName = this.testDataPath + @"cd-Daten.txt"; var csvData = csvReader.ReadAllData(); excelWriter.FileName = Path.Combine(this.resultPath, "cd-Daten.xls"); excelWriter.SheetName = "Tabelle1"; excelWriter.CreateNewFile(); excelWriter.Connect(); excelWriter.WriteAllData(csvData); excelWriter.Disconnect(); excelReader.FileName = excelWriter.FileName; excelReader.SheetName = excelWriter.SheetName; excelReader.Connect(); var accessData = excelReader.ReadAllData(); csvWriter.Encoding = csvReader.Encoding; csvWriter.Enclosure = csvReader.Enclosure; csvWriter.FileName = this.resultPath + @"cd-Daten_ExcelRoundtrip.csv"; csvWriter.WriteAllData(accessData); if (!FileUtil.CompareFiles(csvReader.FileName, csvWriter.FileName)) { throw new Exception("Original and copied file do not match"); } } }
public void Test_ReadXml_WriteCsv_Address() { using (var reader = new XmlAdapter()) { reader.FileName = Path.Combine(this.testDataPath, @"GetAddressResponse.xml"); reader.XPath = "/GetAddressResponse/GetAddressResult/result/address"; using (var writer = new CsvAdapter()) { writer.FileName = Path.Combine(this.resultPath, @"flatxml.csv"); int lineCount = 0; reader.ReadData(30) .ForEach(x => { Console.WriteLine("Tablename=" + x.TableName + ", Count=" + x.Rows.Count); lineCount += x.Rows.Count; }) .Do(x => writer.WriteData(x)); } } // check var targetlineCount = File.ReadLines(this.resultPath + @"flatxml.csv").Count(); Assert.AreEqual(3, targetlineCount); }
public bool PrepareFileForRetrievingData(string filePath) { this.csvAdapter = new CsvAdapter(filePath, ',', 1, 1, 0, true); this.IsPreparedForDetailsOnly = false; return(this.csvAdapter.LoadForData()); }
public bool PrepareFileForLoadingSessionInformationAndConfiguration(string filePath, bool detailsOnly) { this.csvAdapter = new CsvAdapter(filePath, ',', 1, 1, 0, true); this.IsPreparedForDetailsOnly = true; return(this.csvAdapter.LoadForInfoAndConfig()); }
public void GivenNonExistentPath_WhenLoadingCsvData_ItThrows() { var provider = new CsvAdapter(new CsvToSheetConverter()); Action result = () => provider.GetFromPath(@"/some/non/existing/file", ';'); result.Should().Throw <DirectoryNotFoundException>(); }
public void GivenCsvFileOnDisk_WhenLoadingCsvData_SheetContainsData() { var provider = new CsvAdapter(new CsvToSheetConverter()); var sheet = provider.GetFromPath(@"./TestFiles/test.csv", ';'); sheet.Rows.Count.Should().Be(3); sheet.Rows.First().Cells.Count.Should().Be(2); }
public void GivenInvalidBase64EncodedString_WhenLoadingCsvData_ItThrows() { var base64EncodedCsv = "some invalid base64encoded string"; var provider = new CsvAdapter(new CsvToSheetConverter()); Action result = () => provider.GetFromBase64Encoded(base64EncodedCsv, ';'); result.Should().Throw <FormatException>(); }
public void GivenBase64EncodedString_WhenLoadingCsvData_SheetContainsData() { var base64EncodedCsv = "Y29sdW1uMTtjb2x1bW5zMg0Kb25lOzENCnR3bzsy"; var provider = new CsvAdapter(new CsvToSheetConverter()); var csvData = provider.GetFromBase64Encoded(base64EncodedCsv, ';'); csvData.Rows.Count.Should().Be(3); csvData.Rows.First().Cells.Count.Should().Be(2); }
private void Initialize() { CsvStatsImporter csvStatsImporter = new CsvStatsImporter(); IStatsImporter csvAdapter = new CsvAdapter(csvStatsImporter); JsonStatsImporter jsonStatsImporter = new JsonStatsImporter(); IStatsImporter jsonImporter = new JsonAdapter(jsonStatsImporter); var jsonImportedSettings = jsonImporter.FetchData(); var csvIMportedSettings = csvAdapter.FetchData(); }
public static void Sample_String_To_Sqlite() { string data = @"Name;Address;Gpnr John;Main Road; 4711 Jeffrey;;4712 Mike;Hauptstr.1;4713"; string sampleDataPath = @"..\..\Samples\"; var watch = new Stopwatch(); using (Stream stream = StreamUtil.CreateStream(data)) { using (var reader = new CsvAdapter(stream)) { reader.Separator = ";"; using (var writer = new SqliteAdapter()) { writer.FileName = sampleDataPath + @"stringdata.sqlite"; writer.CreateNewFile(); writer.TableName = "Tabelle1"; if (!writer.Connect()) { throw new Exception("No connection"); } watch.Start(); int lineCount = 0; reader.ReadData(30) .ForEach(x => { Console.WriteLine("Tablename=" + x.TableName + ", Count=" + x.Rows.Count); lineCount += x.Rows.Count; }) .Do(x => writer.WriteData(x)); watch.Stop(); Console.WriteLine("lineCount=" + lineCount + ", Time=" + watch.Elapsed); Console.ReadLine(); } } } }
// ******************************************************* Public Functions - Csv ******************************************************** public string ConnectToFile(string pathCsvFile) { try { using (StreamReader streamReader = new StreamReader(pathCsvFile)) { // Just to test if path is OK and can read the file } } catch { return("Unable to connect to .csv file. File must exist."); } csvAdapter = new CsvAdapter(pathCsvFile, this.DataTable, this.constantProgramName); if (csvAdapter == null) { return("Unable to connect to .csv file: " + pathCsvFile + ". File must exist."); } else { return(""); // Empty string if no error. } }
public static void Sample_ReadOracle_WriteCsv() { string sampleDataPath = @"..\..\Samples\"; var watch = new Stopwatch(); using (var reader = new DbAdapter()) { reader.ConnectionInfo = new OracleNativeDbConnectionInfo() { Database = "TESTDB01", UserName = "******", Password = "******", Host = "COMPUTER01" }; reader.TableName = "TB_DATA"; reader.Connect(); using (var writer = new CsvAdapter()) { writer.FileName = Path.Combine(sampleDataPath, "TB_DATA.csv"); watch.Start(); int lineCount = 0; reader.ReadData(30) .ForEach(x => { Console.WriteLine("Tablename=" + x.TableName + ", Count=" + x.Rows.Count); lineCount += x.Rows.Count; }) .Do(x => writer.WriteData(x, false)); watch.Stop(); Console.WriteLine("lineCount=" + lineCount + ", Time=" + watch.Elapsed); Console.ReadLine(); } reader.Disconnect(); } }
public static void Sample_Csv_To_Sqlite() { string sampleDataPath = @"..\..\Samples\"; var watch = new Stopwatch(); using (var reader = new CsvAdapter()) { reader.FileName = sampleDataPath + @"cd-Daten.txt"; reader.Enclosure = "\""; reader.Separator = ";"; using (var writer = new SqliteAdapter()) { writer.FileName = sampleDataPath + @"cd-Daten.sqlite"; writer.CreateNewFile(); if (!writer.Connect()) { throw new Exception("No connection"); } watch.Start(); int lineCount = 0; reader.ReadDataAs <CdDaten>(30) .ForEach(x => { lineCount += 1; }) .Do(x => writer.WriteDataFrom <CdDaten>(x, false, 30)); writer.Disconnect(); watch.Stop(); Console.WriteLine("lineCount=" + lineCount + ", Time=" + watch.Elapsed); Console.ReadLine(); } } }
public static void Sample_DateFormats_Converted() { string sampleDataPath = @"..\..\Samples\"; var watch = new Stopwatch(); using (var reader = new CsvAdapter()) { reader.FileName = sampleDataPath + @"DataFormats.txt"; reader.Enclosure = "\""; reader.Separator = ";"; reader.ReadConverter.CountryColumnName = "CountryCode"; reader.ReadConverter.DefaultCulture = CultureInfo.CurrentCulture; reader.ReadConverter.ConverterDefinitions.Add(new ValueConverterDefinition("ReverseDate", typeof(DateTimeFormatConverter), "yyyyMMddHHmmss")); using (var writer = new CsvAdapter()) { writer.FileName = Path.Combine(Path.GetDirectoryName(reader.FileName), "DataFormats-Converted.txt"); writer.Enclosure = "\""; writer.Separator = ";"; watch.Start(); int lineCount = 0; reader.ReadData(30) .ForEach(x => { Console.WriteLine(x.ToString()); lineCount += x.Rows.Count; }) .Do(x => writer.WriteData(x, false)); watch.Stop(); Console.WriteLine("lineCount=" + lineCount + ", Time=" + watch.Elapsed); Console.ReadLine(); } } }
public void Test_Csv_Access_Csv() { DirectoryUtil.ClearDirectory(this.resultPath); using (var csvReader = new CsvAdapter()) using (var accessWriter = new AccessAdapter()) using (var accessReader = new AccessAdapter()) using (var csvWriter = new CsvAdapter()) { csvReader.Enclosure = ""; csvReader.FileName = this.testDataPath + @"StringData.csv"; csvReader.AutoDetectEncoding(); var csvData = csvReader.ReadAllData(); accessWriter.FileName = Path.Combine(this.resultPath, "cd-Daten.mdb"); accessWriter.TableName = "Tabelle1"; accessWriter.CreateNewFile(); accessWriter.Connect(); accessWriter.WriteAllData(csvData); accessWriter.Disconnect(); accessReader.FileName = accessWriter.FileName; accessReader.TableName = accessWriter.TableName; accessReader.Connect(); var accessData = accessReader.ReadAllData(); accessReader.Disconnect(); csvWriter.Encoding = csvReader.Encoding; csvWriter.Enclosure = csvReader.Enclosure; csvWriter.FileName = this.resultPath + @"cd-Daten_AccessRoundtrip.csv"; csvWriter.WriteAllData(accessData); if (!FileUtil.CompareFiles(csvReader.FileName, csvWriter.FileName)) { throw new Exception("Original and copied file do not match"); } } }
public void GivenAStream_WhenLoadingCsvData_SheetContainsData() { using (var memoryStream = new MemoryStream()) { using (var writer = new StreamWriter(memoryStream, Encoding.UTF8, 1024, true)) { writer.WriteLine("columnn1;column2"); writer.WriteLine("one;1"); writer.WriteLine("two;2"); writer.Flush(); memoryStream.Position = 0; using (var sr = new StreamReader(memoryStream, Encoding.UTF8, false, 1024, true)) { var provider = new CsvAdapter(new CsvToSheetConverter()); var csvData = provider.GetFromStream(sr.BaseStream, ';'); csvData.Rows.Count.Should().Be(3); csvData.Rows.First().Cells.Count.Should().Be(2); } } } }
public void Write_Data_To_Excel_Test() { using (var dt = new CsvAdapter("TestData\\Customers.csv").Read()) { using (var con = new ExcelAdapter("TestData\\The_TestOf_WriteData_Customers.xlsx", op => { op.OpenMode = OpenMode.Editable; op.AddDefaultSheets = false; })) { con.AddNewSheet(dt); con.Save(); } using (var con = new ExcelAdapter("TestData\\The_TestOf_WriteData_Customers.xlsx")) { using (var newtb = con.ReadData(dt.TableName).ToDataTable(true)) { Assert.IsTrue(dt.Rows.Count == newtb.Rows.Count); Assert.IsTrue(dt.Columns.Count == newtb.Columns.Count); } } } }
public void Setup() { sut = new CsvAdapter(); }
public void Init() { _adapter = new CsvAdapter(); }
public void CloseSession() { this.csvAdapter = null; }