public void TestSnifferDelimiter2() { string fileName = WriteTextToFile(String.Format(";a,b,|c{0}d,e,f{0}g,|h,i", "\r\n")); CSVSniffer sniffer = CSVSniffer.Sniff(fileName); Assert.AreEqual(',', sniffer.Delimiter); }
public void TestHeaderLinesWithoutHeader() { string fileName = WriteTextToFile(String.Format("a,b,c{0}d,e,f{0}g,h,i", "\r\n")); CSVSniffer sniffer = CSVSniffer.Sniff(fileName, 0); Assert.AreEqual(0, sniffer.HeaderLines); }
public void TestHeaderLinesWithHeader() { string fileName = WriteTextToFile(String.Format("OrderNumber, Quantity, Price{0}a,50,100{0}d,2,4{0}g,100,200", "\r\n")); CSVSniffer sniffer = CSVSniffer.Sniff(fileName, 0); Assert.AreEqual(1, sniffer.HeaderLines); }
public void TestSnifferTextQualifierNone() { string fileName = WriteTextToFile(String.Format("'a,\"b,'c{0}'d,e,'f{0}'g,\"h,'i", "\r\n")); CSVSniffer sniffer = CSVSniffer.Sniff(fileName); Assert.AreEqual(',', sniffer.Delimiter); Assert.IsFalse(sniffer.TextQualifier.HasValue); }
public void TestSnifferTextQualifierMixed() { string fileName = WriteTextToFile(String.Format("'a',\"b,'c'{0}'d',e,'f'{0}'g',\"h\",'i'", "\r\n")); CSVSniffer sniffer = CSVSniffer.Sniff(fileName); Assert.AreEqual(',', sniffer.Delimiter); Assert.AreEqual('\'', sniffer.TextQualifier); }
public void TestColumnHeadersDuplicate() { string fileName = WriteTextToFile(String.Format("OrderNumber, Quantity, Quantity{0}a,b,c{0}d,e,f{0}g,h,i", "\r\n")); CSVSniffer sniffer = CSVSniffer.Sniff(fileName, 1); string[] columnHeaders = sniffer.ColumnHeaders; Assert.AreEqual(3, columnHeaders.Length); Assert.AreEqual("OrderNumber", columnHeaders[0]); Assert.AreEqual("Quantity", columnHeaders[1]); Assert.AreEqual("Quantity3", columnHeaders[2]); }
public void TestColumnHeadersNoHeader() { string fileName = WriteTextToFile(String.Format("a,b,c{0}d,e,f{0}g,h,i", "\r\n")); CSVSniffer sniffer = CSVSniffer.Sniff(fileName, 0); string[] columnHeaders = sniffer.ColumnHeaders; Assert.AreEqual(3, columnHeaders.Length); Assert.AreEqual("Column1", columnHeaders[0]); Assert.AreEqual("Column2", columnHeaders[1]); Assert.AreEqual("Column3", columnHeaders[2]); }
public void TestColumnHeadersWithMultiHeader() { string fileName = WriteTextToFile( String.Format("-----------------{0}OrderNumber, Quantity, Price{0}--------------------{0}a,b,c{0}d,e,f{0}g,h,i", "\r\n")); CSVSniffer sniffer = CSVSniffer.Sniff(fileName, 3); string[] columnHeaders = sniffer.ColumnHeaders; Assert.AreEqual(3, columnHeaders.Length); Assert.AreEqual("OrderNumber", columnHeaders[0]); Assert.AreEqual("Quantity", columnHeaders[1]); Assert.AreEqual("Price", columnHeaders[2]); }
private void InferFromSampleFile() { var sniffer = CSVSniffer.Sniff(SampleFileName, Convert.ToInt32(SkipHeaderLines)); if (sniffer.Delimiter.HasValue) { SetDelimiter(sniffer.Delimiter.Value); SetTextQualifier(sniffer.TextQualifier); this.SkipHeaderLines = sniffer.HeaderLines; SetFieldList(sniffer.ColumnHeaders); } else { MessageBox.Show("Could not infer delimiter, text qualifier and column headers from file", "Information", MessageBoxButton.OK, MessageBoxImage.Information); } }