/// <summary> /// Open file and read into array, display unsorted /// </summary> private void frmSort_Load(object sender, System.EventArgs e) { FileHelperEngine engine = new FileHelperEngine(typeof (CustomersVerticalBar)); mRecords = (CustomersVerticalBar[]) engine.ReadString(SampleData); grid1.SelectedObject = mRecords; }
public void WriteReadImage() { ImageClass ima = new ImageClass(); Bitmap bmp = new Bitmap(20, 10); bmp.SetPixel(10, 5, Color.Gainsboro); bmp.SetPixel(10, 7, Color.Navy); ima.MyImage = bmp; FileHelperEngine engine = new FileHelperEngine(typeof(ImageClass)); string data = engine.WriteString((IList) new object[] {ima}); ImageClass[] res = (ImageClass[]) engine.ReadString(data); Assert.AreEqual(1, res.Length); Assert.IsNotNull(res[0].MyImage); Assert.AreEqual(typeof(Bitmap), res[0].MyImage.GetType()); Assert.AreEqual(Color.Gainsboro.R, ((Bitmap)res[0].MyImage).GetPixel(10, 5).R); Assert.AreEqual(Color.Gainsboro.G, ((Bitmap)res[0].MyImage).GetPixel(10, 5).G); Assert.AreEqual(Color.Gainsboro.B, ((Bitmap)res[0].MyImage).GetPixel(10, 5).B); Assert.AreEqual(Color.Navy.R, ((Bitmap)res[0].MyImage).GetPixel(10, 7).R); Assert.AreEqual(Color.Navy.G, ((Bitmap)res[0].MyImage).GetPixel(10, 7).G); Assert.AreEqual(Color.Navy.B, ((Bitmap)res[0].MyImage).GetPixel(10, 7).B); }
/// <summary> /// Run the engine into an array and show data on a grid /// </summary> private void cmdRun_Click(object sender, EventArgs e) { var engine = new FileHelperEngine<CustomersVerticalBar>(); CustomersVerticalBar[] res = (CustomersVerticalBar[]) engine.ReadString(txtData.Text); grid1.SelectedObject = res; }
/// <summary> /// Run the engine over a grid and display /// the result in a grid /// </summary> private void cmdRun_Click(object sender, EventArgs e) { var engine = new FileHelperEngine<CustomersFixed>(); grid1.SelectedObject = engine.ReadString(txtData.Text); ; }
public IHttpActionResult PullSensorDataFromCsvFileAsList(string fileName) { try { //filehelper object FileHelperEngine engine = new FileHelperEngine(typeof(TemperatureSensor)); //set header text engine.HeaderText = "DeviceId,IsActive,SensorId,Temperature,LogDate,LogHour,LogMinute,LogSecond"; var result = StorageHelper.ReadDataFromBlob(string.Format("{0}.csv", fileName)).Result; //read the CSV file into your object Arrary var sensorsDataArray = (TemperatureSensor[])engine.ReadString(result); var sensorsDataList = sensorsDataArray.ToList(); if (sensorsDataList != null) return Ok(sensorsDataList); return BadRequest("Result was invalid"); } catch(Exception ex) { return BadRequest(ex.Message); } }
public void RunTimeEmptyGuidProperties() { var builder = new DelimitedClassBuilder("EntityWithGuid", "\t"); builder.AddField("Name", typeof(string)); builder.AddField("Id", typeof(Guid)); builder.LastField.FieldNullValue = Guid.Empty; var engine = new FileHelperEngine(builder.CreateRecordClass()) { Options = { IgnoreFirstLines = 1 } }; const string inputValue = @"Name Id first second "; var records = engine.ReadString(inputValue); records.Length.AssertEqualTo(2); dynamic record = records[0]; ((Guid)record.Id).AssertEqualTo(Guid.Empty); ((string)record.Name).AssertEqualTo("first"); record = records[1]; ((Guid)record.Id).AssertEqualTo(Guid.Empty); ((string)record.Name).AssertEqualTo("second"); }
public void ExceptionsTestsPriceConverterTest() { var engine = new FileHelperEngine<CustomConvType>(); Assert.Throws<ConvertException>( () => engine.ReadString(testTo)); }
private void RunAlignTest() { var engine = new FileHelperEngine<AlignClass>(); var resTemp = TestCommon.ReadTest<AlignClass>(engine, "Good", "Trim1.txt"); string tmp = engine.WriteString(resTemp); var engine2 = new FileHelperEngine<AlignClass2>(); res = engine2.ReadString(tmp); }
public void EncodingAdvanced3() { var engine = new FileHelperEngine(typeof(EncodingRecord)); byte[] data = File.ReadAllBytes(FileTest.Good.EncodingAdv3.Path); var encoding = new System.Text.ASCIIEncoding(); string dataString = encoding.GetString(data); var res = (EncodingRecord[])engine.ReadString(dataString); Assert.AreEqual(res.Length, 18); }
private void RunAlignTest() { engine = new FileHelperEngine(typeof (AlignClass)); AlignClass[] resTemp = (AlignClass[]) TestCommon.ReadTest(engine, "Good", "Trim1.txt"); string tmp = engine.WriteString(resTemp); engine = new FileHelperEngine(typeof (AlignClass2)); res = (AlignClass2[]) engine.ReadString(tmp); }
public void ReadFileMaxRecords07() { var engine = new FileHelperEngine<SampleType>(); SampleType[] res = FileTest.Good.Test1.ReadWithEngine(engine); string temp = engine.WriteString(res); res = engine.ReadString(temp, 2); Assert.AreEqual(2, res.Length); Assert.AreEqual(2, engine.TotalRecords); Assert.AreEqual(0, engine.ErrorManager.ErrorCount); }
public void ExceptionsTestsPriceConverterTest2() { try { var engine = new FileHelperEngine<CustomConvType>(); object[] res = engine.ReadString(testTo); } catch (ConvertException ex) { Assert.IsTrue(ex.Message.IndexOf("VeryBadConverter") >= 0); Assert.IsTrue(ex.Message.IndexOf("custom converter") >= 0); Assert.IsTrue(ex.Message.IndexOf("Line: 1") >= 0); Assert.IsTrue(ex.Message.IndexOf("Column: 1") >= 0); } }
public void NullDateFormat() { String data = "23/11/2010,24/11/2010\n,\n , \n"; var engine = new FileHelperEngine<NullDateFormat>(); NullDateFormat[] result = engine.ReadString(data); Assert.AreEqual(new DateTime(2010, 11, 23), result[0].OrderDate, "Order date should be 23/11/2010 from first line" ); Assert.AreEqual(new DateTime(2010, 11, 24), result[0].ShipDate, "Ship date should be 24/11/2010 from first line"); Assert.AreEqual(null, result[1].OrderDate, "Order date should be null on second line"); Assert.AreEqual(null, result[1].ShipDate, "Ship date should be null on second line"); Assert.AreEqual(null, result[2].OrderDate, "Order date should be null on third line with blanks"); Assert.AreEqual(null, result[2].ShipDate, "Ship date should be null on third line with blanks"); }
public void OptionalForReadOnEmptyFields() { var eng = new FileHelperEngine<OptionalForReadOnEmptyFieldsClass>(); var records = eng.ReadString(@"id,text,number 121,""""""not good"""" line"", 4456 120,""good line this one"",789 122,,5446"); Check.That(records.Length).IsEqualTo(3); Check.That(records[0].Text).IsEqualTo("\"not good\" line"); Check.That(records[2].Text).IsEqualTo(""); }
private void LoadCrimeData() { if (_crimeList == null) { _crimeList = new List<CrimeDetail>(); } var engine = new FileHelperEngine(typeof(CrimeDetail)); var crimesArray = engine.ReadString(CrimeData.Data) as CrimeDetail[]; if (crimesArray != null && crimesArray.Length > 0) { _crimeList.AddRange(crimesArray.Reverse()); } }
public static VersionData GetLastVersion() { string dataString; using (WebClient webClient = new WebClient()) { byte[] data = webClient.DownloadData("http://www.filehelpers.net/version.txt"); dataString = System.Text.Encoding.Default.GetString(data); } VersionData[] versions = null; FileHelperEngine engine = new FileHelperEngine(typeof (VersionData)); versions = (VersionData[]) engine.ReadString(dataString); return versions[versions.Length - 1]; }
public void UpperAndLowerTest() { var LowerText = "lowercase sample;another"; var UpperText = "Upper sample;Another"; var engine = new FileHelperEngine<LowerCharClass>(); var res = engine.ReadString(UpperText); res[0].fldChar.AssertEqualTo('u', "Should be lower case U from UpperText"); res[0].fldChar2.AssertEqualTo('a', "Should be lower case a from UpperText"); var engine2 = new FileHelperEngine<UpperCharClass>(); var res2 = engine2.ReadString(LowerText); res2[0].fldChar.AssertEqualTo('L', "Should be upper case L from LowerText"); res2[0].fldChar2.AssertEqualTo('A', "Should be upper case A from LowerText"); var engine3 = new FileHelperEngine<NoChangeCharClass>(); var res4 = engine3.ReadString(LowerText); res4[0].fldChar.AssertEqualTo('l', "Should be lower case L from LowerText"); res4 = engine3.ReadString(UpperText); res4[0].fldChar.AssertEqualTo('U', "Should be Uppper case U from UpperText"); }
public void UpperAndLowerTest() { var LowerText = "lowercase sample;another"; var UpperText = "Upper sample;Another"; var engine = new FileHelperEngine<LowerCharClass>(); var res = engine.ReadString(UpperText); Check.That(res[0].fldChar).IsEqualTo('u'); Check.That(res[0].fldChar2).IsEqualTo('a'); var engine2 = new FileHelperEngine<UpperCharClass>(); var res2 = engine2.ReadString(LowerText); Check.That(res2[0].fldChar).IsEqualTo('L'); Check.That(res2[0].fldChar2).IsEqualTo('A'); var engine3 = new FileHelperEngine<NoChangeCharClass>(); var res4 = engine3.ReadString(LowerText); Check.That(res4[0].fldChar).IsEqualTo('l'); res4 = engine3.ReadString(UpperText); Check.That(res4[0].fldChar).IsEqualTo('U'); }
public void ExceptionsTestsPriceConverterTest2() { try { engine = new FileHelperEngine(typeof(CustomConvType)); PriceRecord[] res = (PriceRecord[])engine.ReadString(testTo); } catch (ConvertException ex) { Assert.IsTrue(ex.Message.IndexOf("VeryBadConverter") >= 0); Assert.IsTrue(ex.Message.IndexOf("custom converter") >= 0); Assert.IsTrue(ex.Message.IndexOf("Line: 1") >= 0); Assert.IsTrue(ex.Message.IndexOf("Column: 1") >= 0); } }
public void Test() { string sampleData = @"1;1;-1;-11;11;-111;111;-1111;1111;-1111.11;1111.11;111.111;31.12.2007 23:51:51;äaxx; eab37088-1785-4aba-b43c-04656487e68e 1;2;-2;-12;12;-112;112;-1112;1112;-1111.22;1111.22;222.222;31.12.2007 23:52:52;ÄBxx; 35b88d7a-f6e5-4d20-ac30-0802acad73dc 0;3;-3;-13;13;-113;113;-1113;1113;-1111.33;1111.33;333.333;31.12.2007 23:52:53;ßCxx; 075222d6-40d6-4bc8-a022-aea70c20331b 0;4;-4;-14;14;-114;114;-1114;1114;-1111.44;1111.44;444.444;31.12.2007 23:53:54;üdxx; 1be6bf2a-08d2-468b-a3aa-d7b88072e2b1 1;5;-5;-15;15;-115;115;-1115;1115;-1111.55;1111.55;555.555;31.12.2007 23:54:55;ÜExx; 15a8c3d0-cb42-4684-b573-c519af0c0b69"; var engine = new FileHelperEngine<AllTypesClass>(); AllTypesClass[] res = engine.ReadString(sampleData); Assert.AreEqual('ä', res[0].fldChar); Assert.AreEqual("eab37088-1785-4aba-b43c-04656487e68e", res[0].fldGuid.ToString()); Assert.AreEqual("15a8c3d0-cb42-4684-b573-c519af0c0b69", res[4].fldGuid.ToString()); }
public void InNewLine0rw() { engine = new FileHelperEngine(typeof(InNewLineType0)); InNewLineType0[] res = (InNewLineType0[]) engine.ReadFile(Common.TestPath(@"Good\InNewLine0.txt")); string tmp = engine.WriteString(res); res = (InNewLineType0[]) engine.ReadString(tmp); Assert.AreEqual(3, res.Length); Assert.AreEqual(3, engine.TotalRecords); Assert.AreEqual("166.90.252.2", res[0].IpAddress); Assert.AreEqual("67.105.166.35", res[1].IpAddress); Assert.AreEqual("67.105.166.35", res[2].IpAddress); }
public void InNewLine1rw() { var engine = new FileHelperEngine<InNewLineType1>(); InNewLineType1[] res = engine.ReadFile(TestCommon.GetPath("Good", "InNewLine1.txt")); string tmp = engine.WriteString(res); res = (InNewLineType1[]) engine.ReadString(tmp); Assert.AreEqual(3, res.Length); Assert.AreEqual(3, engine.TotalRecords); Assert.AreEqual("166.90.252.2", res[0].IpAddress); Assert.AreEqual("67.105.166.35", res[1].IpAddress); Assert.AreEqual("67.105.166.35", res[2].IpAddress); }
/// <summary> /// Run the engine with a progress bar /// hooked into it to give the user a visual /// cue on how things are progressing. /// </summary> private void cmdRun_Click(object sender, EventArgs e) { // Disable the button, don't want it clicked twice cmdRun.Enabled = false; FileHelperEngine engine = new FileHelperEngine(typeof (CustomersVerticalBar)); object[] records = engine.ReadString(Resources.Customers); Application.DoEvents(); engine.Progress += ProgressChange; engine.WriteString(records); // enable the button again we have finished. cmdRun.Enabled = true; }
public void WriteNullableTypes1() { var engine = new FileHelperEngine<NullableType>(); var toWrite = new System.Collections.Generic.List<NullableType>(); NullableType record; record = new NullableType(); record.Field1 = new DateTime(1314, 12, 11); record.Field2 = "901"; record.Field3 = 234; toWrite.Add(record); record = new NullableType(); record.Field1 = null; record.Field2 = "012"; record.Field3 = null; toWrite.Add(record); record = new NullableType(); record.Field1 = new DateTime(1316, 5, 6); record.Field2 = "111"; record.Field3 = 4; toWrite.Add(record); NullableType[] res = engine.ReadString(engine.WriteString(toWrite)); Assert.AreEqual(3, res.Length); Assert.AreEqual(3, engine.TotalRecords); Assert.AreEqual(0, engine.ErrorManager.ErrorCount); Assert.AreEqual(new DateTime(1314, 12, 11), res[0].Field1); Assert.AreEqual("901", res[0].Field2); Assert.AreEqual(234, res[0].Field3); Assert.IsNull(res[1].Field1); Assert.AreEqual("012", res[1].Field2); Assert.IsNull(res[1].Field3); Assert.AreEqual(new DateTime(1316, 5, 6), res[2].Field1); Assert.AreEqual("", engine.WriteString(toWrite).Split(new string[] {Environment.NewLine}, StringSplitOptions.None)[1]. Substring(0, 8).Trim()); }
public void ReadString() { engine = new FileHelperEngine(typeof (ChineseTest)); ChineseTest[] res; //engine.Encoding = Encoding.Unicode; res = (ChineseTest[]) engine.ReadString(@"A123456789台北市民權東東路3號 20061008 A987654321台北市民權東東路5號 20061008"); Assert.AreEqual(2, res.Length); Assert.AreEqual(2, engine.TotalRecords); Assert.AreEqual(0, engine.ErrorManager.ErrorCount); Assert.AreEqual(new DateTime(2006, 10, 08), res[0].fecha); Assert.AreEqual("台北市民權東東路3號 ", res[0].chino); Assert.AreEqual("A123456789", res[0].id); }
public void ChangeLineInEvent() { string input = "\n\n\n"; engine = new FileHelperEngine(typeof(SampleType)); engine.BeforeReadRecord += new BeforeReadHandler<object>(BeforeEventChange); SampleType[] res = (SampleType[]) engine.ReadString(input); Assert.AreEqual(3, res.Length); Assert.AreEqual(new DateTime(1314, 12, 11), res[0].Field1); Assert.AreEqual("901", res[0].Field2); Assert.AreEqual(234, res[0].Field3); Assert.AreEqual(new DateTime(1314, 12, 11), res[1].Field1); Assert.AreEqual("901", res[2].Field2); Assert.AreEqual(234, res[2].Field3); }
public void ReadFileDefined() { var engine = new FileHelperEngine<SampleIntegerTypeDefined>(); var res = (SampleIntegerTypeDefined[]) engine.ReadString(toTestMixed); Assert.AreEqual(3, res.Length); Assert.AreEqual(3, engine.TotalRecords); Assert.AreEqual(0, engine.ErrorManager.ErrorCount); Assert.AreEqual(123, res[0].Field1); Assert.AreEqual(456, res[0].Field2); Assert.AreEqual(78910, res[0].Field3); Assert.AreEqual(1234, res[1].Field1); Assert.AreEqual(4056, res[1].Field2); Assert.AreEqual(78910, res[1].Field3); }
public void GetMSWSReportsFromURL_AsData_20060709_28Records() { DateTime date = new DateTime(2006, 7, 20); string url = string.Format(MSWSDataUrl_Format, date.ToString(MSWSDataURL_DateFormat)); MSWSDailyReportRecord[] res = null; FileHelperEngine engine = new FileHelperEngine(typeof(MSWSDailyReportRecord)); byte[] data; using (WebClient webClient = new WebClient()) { //webClient.Encoding = System.Text.Encoding.ASCII; data = webClient.DownloadData(url); System.Text.ASCIIEncoding encoding = new System.Text.ASCIIEncoding(); string dataString = encoding.GetString(data); res = (MSWSDailyReportRecord[]) engine.ReadString(dataString); } Assert.AreEqual(res.Length, 32); }
public void WriteExcelCsv2() { var arr = new List <ExcelCsv2Type>(); ExcelCsv2Type record; record = new ExcelCsv2Type(); record.OrganizationName = "AllwaysOnTop"; record.TestField = "Test 1,"; arr.Add(record); record = new ExcelCsv2Type(); record.OrganizationName = "COMPUTERS, HARDWARE"; record.TestField = "Test, 2"; arr.Add(record); record = new ExcelCsv2Type(); record.OrganizationName = "4S Consulting, Inc."; record.TestField = " Test 3"; arr.Add(record); record = new ExcelCsv2Type(); record.OrganizationName = "SmartSolutions"; record.TestField = "Test 4"; arr.Add(record); var engine = new FileHelperEngine <ExcelCsv2Type>(); string tmp = engine.WriteString(arr.ToArray()); ExcelCsv2Type[] res = engine.ReadString(tmp); Assert.AreEqual(4, res.Length); Assert.AreEqual("AllwaysOnTop", res[0].OrganizationName); Assert.AreEqual("COMPUTERS, HARDWARE", res[1].OrganizationName); Assert.AreEqual("4S Consulting, Inc.", res[2].OrganizationName); Assert.AreEqual("SmartSolutions", res[3].OrganizationName); Assert.AreEqual("Test 1,", res[0].TestField); Assert.AreEqual("Test, 2", res[1].TestField); Assert.AreEqual(" Test 3", res[2].TestField); Assert.AreEqual("Test 4", res[3].TestField); }
static void Main(string[] args) { var engine = new FileHelperEngine <ImportRecord>(); string fileAsString = @"custID: 1732" + Environment.NewLine + @"name: Juan Perez" + Environment.NewLine + @"balance: 435.00" + Environment.NewLine + @"date: 11-05-2002" + Environment.NewLine; ImportRecord[] validRecords = engine.ReadString(fileAsString); var dictionary = validRecords.ToDictionary(r => r.Key, r => r.Value); Assert.AreEqual(dictionary["custID"], "1732"); Assert.AreEqual(dictionary["name"], "Juan Perez"); Assert.AreEqual(dictionary["balance"], "435.00"); Assert.AreEqual(dictionary["date"], "11-05-2002"); Console.ReadKey(); }
public void ReadFileDefault() { engine = new FileHelperEngine(typeof(SampleIntegerType)); SampleIntegerType[] res = (SampleIntegerType[]) engine.ReadString(toTest); Assert.AreEqual(3, res.Length); Assert.AreEqual(3, engine.TotalRecords); Assert.AreEqual(0, engine.ErrorManager.ErrorCount); Assert.AreEqual(123, res[0].Field1); Assert.AreEqual(456, res[0].Field2); Assert.AreEqual(78910, res[0].Field3); Assert.AreEqual(1234, res[1].Field1); Assert.AreEqual(4056, res[1].Field2); Assert.AreEqual(78910, res[1].Field3); }
public void ReadImageData() { string data = "iVBORw0KGgoAAAANSUhEUgAAABQAAAAKCAYAAAC0VX7mAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAB1JREFUOE9jYBgFQzcE7ty583+wu75h0LuQuBAEAD0wBRO2X3TEAAAAAElFTkSuQmCC"; var engine = new FileHelperEngine<ImageClass>(); ImageClass[] res = engine.ReadString(data); Assert.AreEqual(1, res.Length); Assert.IsNotNull(res[0].MyImage); Assert.AreEqual(20, res[0].MyImage.Width); Assert.AreEqual(10, res[0].MyImage.Height); Assert.AreEqual(typeof(Bitmap), res[0].MyImage.GetType()); Assert.AreEqual(Color.Gainsboro.R, ((Bitmap)res[0].MyImage).GetPixel(10, 5).R); Assert.AreEqual(Color.Gainsboro.G, ((Bitmap)res[0].MyImage).GetPixel(10, 5).G); Assert.AreEqual(Color.Gainsboro.B, ((Bitmap)res[0].MyImage).GetPixel(10, 5).B); Assert.AreEqual(Color.Navy.R, ((Bitmap)res[0].MyImage).GetPixel(10, 7).R); Assert.AreEqual(Color.Navy.G, ((Bitmap)res[0].MyImage).GetPixel(10, 7).G); Assert.AreEqual(Color.Navy.B, ((Bitmap)res[0].MyImage).GetPixel(10, 7).B); }
public void GetMSWSReportsFromURL_AsData_20060709_28Records() { DateTime date = new DateTime(2006, 7, 20); string url = string.Format(MSWSDataUrl_Format, date.ToString(MSWSDataURL_DateFormat)); MSWSDailyReportRecord[] res = null; FileHelperEngine engine = new FileHelperEngine(typeof(MSWSDailyReportRecord)); byte[] data; using (WebClient webClient = new WebClient()) { //webClient.Encoding = System.Text.Encoding.ASCII; data = webClient.DownloadData(url); System.Text.ASCIIEncoding encoding = new System.Text.ASCIIEncoding(); string dataString = encoding.GetString(data); res = (MSWSDailyReportRecord[])engine.ReadString(dataString); } Assert.AreEqual(res.Length, 32); }
public void InNewLineFixed2rw() { engine = new FileHelperEngine(typeof(InNewLineFixedType2)); InNewLineFixedType2[] res = (InNewLineFixedType2[])engine.ReadFile(TestCommon.TestPath(@"Good\InNewLineFixed2.txt")); string tmp = engine.WriteString(res); res = (InNewLineFixedType2[])engine.ReadString(tmp); Assert.AreEqual(3, res.Length); Assert.AreEqual(3, engine.TotalRecords); Assert.AreEqual("166.090.252.002", res[0].IpAddress); Assert.AreEqual("067.105.166.035", res[1].IpAddress); Assert.AreEqual("067.105.166.035", res[2].IpAddress); Assert.AreEqual(111, res[0].FieldLast); Assert.AreEqual(222, res[1].FieldLast); Assert.AreEqual(333, res[2].FieldLast); }
public void ReadImageData() { string data = "iVBORw0KGgoAAAANSUhEUgAAABQAAAAKCAYAAAC0VX7mAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAB1JREFUOE9jYBgFQzcE7ty583+wu75h0LuQuBAEAD0wBRO2X3TEAAAAAElFTkSuQmCC"; var engine = new FileHelperEngine <ImageClass>(); ImageClass[] res = engine.ReadString(data); Assert.AreEqual(1, res.Length); Assert.IsNotNull(res[0].MyImage); Assert.AreEqual(20, res[0].MyImage.Width); Assert.AreEqual(10, res[0].MyImage.Height); Assert.AreEqual(typeof(Bitmap), res[0].MyImage.GetType()); Assert.AreEqual(Color.Gainsboro.R, ((Bitmap)res[0].MyImage).GetPixel(10, 5).R); Assert.AreEqual(Color.Gainsboro.G, ((Bitmap)res[0].MyImage).GetPixel(10, 5).G); Assert.AreEqual(Color.Gainsboro.B, ((Bitmap)res[0].MyImage).GetPixel(10, 5).B); Assert.AreEqual(Color.Navy.R, ((Bitmap)res[0].MyImage).GetPixel(10, 7).R); Assert.AreEqual(Color.Navy.G, ((Bitmap)res[0].MyImage).GetPixel(10, 7).G); Assert.AreEqual(Color.Navy.B, ((Bitmap)res[0].MyImage).GetPixel(10, 7).B); }
private IEnumerator loadCityDataWeb(string path) { CBUG.Do("City Path is: " + path); WWW www = new WWW(path); yield return(www); cityCSVWeb = www.text; CBUG.Do("CityScript is: "); CBUG.Do(cityCSVWeb.Substring(0, 20)); _cityData = engine_CityData.ReadString(cityCSVWeb); if (_cityData == null) { CBUG.Do("OUR LIBRARY DOESN'T WORK"); } else { CBUG.Do("City DATA_LENGTH: " + _cityData.Length); } }
public void ReadAsDataTableWithCustomConverter() { var fields = new[] { "FirstName", "LastName", "StreetNumber", "StreetAddress", "Unit", "City", "State", }; var cb = new DelimitedClassBuilder("ImportContact", ","); // Add assembly reference cb.AdditionalReferences.Add(typeof(MyCustomConverter).Assembly); foreach (var f in fields) { cb.AddField(f, typeof(string)); cb.LastField.TrimMode = TrimMode.Both; cb.LastField.FieldQuoted = false; } cb.AddField("Zip", typeof(int?)); cb.LastField.Converter.TypeName = "FileHelpers.Tests.Dynamic.DelimitedClassBuilderTests.MyCustomConverter"; mEngine = new FileHelperEngine(cb.CreateRecordClass()); string source = "Alex & Jen,Bouquet,1815,Bell Rd,, Batavia,OH,45103" + Environment.NewLine + "Mark & Lisa K ,Arlinghaus,1817,Bell Rd,, Batavia,OH,NaN" + Environment.NewLine + "Ed & Karen S ,Craycraft,1819,Bell Rd,, Batavia,OH,45103" + Environment.NewLine; var contactData = mEngine.ReadString(source); Assert.AreEqual(3, contactData.Length); var zip = mEngine.RecordType.GetFields()[7]; Assert.AreEqual("Zip", zip.Name); Assert.IsNull(zip.GetValue(contactData[1])); Assert.AreEqual((decimal)45103, zip.GetValue(contactData[2])); }
private bool CreateSalesOrderNotification(IEnumerable <OrderNotification> salesOrder, out List <DatColPickTicket> listOfNotifications) { listOfNotifications = new List <DatColPickTicket>(); var engine = new FileHelperEngine(typeof(DatColPickTicket)); var orderLines = salesOrder .GroupBy(x => x.OrderLineID, x => x); foreach (var orderLine in orderLines) { DatColPickTicket originalLine = null; try { var originalLines = engine.ReadString(orderLine.First().OriginalLine) as DatColPickTicket[]; if (originalLines != null) { originalLine = originalLines.First(); } if (originalLine == null) { return(false); } } catch { return(false); } var shippedItems = GetShippedItems(orderLine); var cancelledItems = GetCancelledItems(orderLine); originalLine.PickedItems = shippedItems.ToString(CultureInfo.InvariantCulture); listOfNotifications.Add(originalLine); } return(true); }
public void WriteNull() { var engine = new FileHelperEngine <SampleType>(); SampleType[] res = new SampleType[3]; res[0] = new SampleType(); res[1] = new SampleType(); res[2] = new SampleType(); string tempo = engine.WriteString(res); res = engine.ReadString(tempo); Assert.AreEqual(3, res.Length); Assert.AreEqual(3, engine.TotalRecords); Assert.AreEqual(0, engine.ErrorManager.ErrorCount); Assert.AreEqual(DateTime.MinValue, res[0].Field1); Assert.AreEqual("", res[0].Field2); Assert.AreEqual(0, res[0].Field3); }
/// <summary> /// Import from a class defined csv file. Remove all existing /// records in the target data set, load new rows and archive /// the records for restore points /// </summary> /// <param name="data"></param> /// <param name="user"></param> /// <returns></returns> public ImportResult Load(Stream data, User user) { if (ReadOnly) { return(null); } var reader = new StreamReader(data); var csv = reader.ReadToEnd(); var engine = new FileHelperEngine <T> { ErrorMode = ErrorMode.SaveAndContinue }; var rows = engine.ReadString(csv); var results = new ImportResult { ImportCount = rows.Length, Errors = engine.ErrorManager }; if (results.Errors.ErrorCount == 0) { var trans = new SqlTransaction((AbstractSqlConnectionDescriptor)_writeDao.ConnDesc); try { // Refresh the data if successfull PreProcess(trans, rows); _writeDao.DeleteAll(trans); _writeDao.Insert(trans, rows); PostProcess(trans, rows); trans.Commit(); PdbUploadRevision.AddUploadRevision(UploadType, csv, user); } catch (Exception) { trans.Rollback(); throw; } } return(results); }
static void Main(string[] args) { var engine = new FileHelperEngine <ImportRecord>(); string fileAsString = @"custID: 1732 name: Juan Perez balance: 435.00 date: 11-05-2002 custID: 554 name: Pedro Gomez balance: 12342.30 date: 06-02-2004"; ImportRecord[] validRecords = engine.ReadString(fileAsString); var customers = validRecords .Batch(4, x => x.ToDictionary(r => r.Key, r => r.Value)) .Select(dictionary => new Customer() { Id = dictionary["custID"], Name = dictionary["name"], Balance = dictionary["balance"], Date = dictionary["date"] }).ToList(); Customer customer1 = customers[0]; Assert.AreEqual(customer1.Id, "1732"); Assert.AreEqual(customer1.Name, "Juan Perez"); Assert.AreEqual(customer1.Balance, "435.00"); Assert.AreEqual(customer1.Date, "11-05-2002"); Customer customer2 = customers[1]; Assert.AreEqual(customer2.Id, "554"); Assert.AreEqual(customer2.Name, "Pedro Gomez"); Assert.AreEqual(customer2.Balance, "12342.30"); Assert.AreEqual(customer2.Date, "06-02-2004"); Console.WriteLine("All OK"); Console.ReadKey(); }
static void Main(string[] args) { var engine = new FileHelperEngine <File_load>(); var records = engine.ReadString( "112233444444" + Environment.NewLine + "1122334" ); var firstRecord = records[0]; Assert.AreEqual("11", firstRecord.proj_name); Assert.AreEqual("22", firstRecord.iso); Assert.AreEqual("33", firstRecord.line); Assert.AreEqual("444444", firstRecord.pid); var secondRecord = records[1]; Assert.AreEqual("11", secondRecord.proj_name); Assert.AreEqual("22", secondRecord.iso); Assert.AreEqual("33", secondRecord.line); Assert.AreEqual("4", secondRecord.pid); Console.Read(); }
public List <WerpMutualFund> LoadMutualData(XmlDocument dataXml) { logger.Debug("Looping through each nodes in XMLDocument and creating WerpMutualFund list"); FileHelperEngine engine = new FileHelperEngine(typeof(WerpMutualFund)); List <WerpMutualFund> Wmf = new List <WerpMutualFund>(); try { foreach (XmlNode xn in dataXml.ChildNodes[0].ChildNodes) { WerpMutualFund[] WMFList = (WerpMutualFund[])engine.ReadString(xn.InnerText); WerpMutualFund vm = WMFList[0]; Wmf.Add(vm); } } catch (Exception ex) { logger.Error("An error occurred while creating WerpMutualFund list from XMLDocument " + ex.ToString()); } logger.Info("Total count =" + Wmf.Count); return(Wmf); }
public void NullDateFormat() { string data = string.Format("23/11/2010,24/11/2010{0},{0},{0}", Environment.NewLine); var engine = new FileHelperEngine <NullDateFormatMulti>(); NullDateFormatMulti[] result = engine.ReadString(data); Assert.AreEqual(new DateTime(2010, 11, 23), result[0].OrderDate, "Order date should be 23/11/2010 from first line"); Assert.AreEqual(new DateTime(2010, 11, 24), result[0].ShipDate, "Ship date should be 24/11/2010 from first line"); Assert.AreEqual(null, result[1].OrderDate, "Order date should be null on second line"); Assert.AreEqual(null, result[1].ShipDate, "Ship date should be null on second line"); Assert.AreEqual(null, result[2].OrderDate, "Order date should be null on third line with blanks"); Assert.AreEqual(null, result[2].ShipDate, "Ship date should be null on third line with blanks"); string newData = engine.WriteString(result); Assert.AreEqual(data, newData, "Round trip should match"); }
private void LoadEnchantsCsv() { FileHelperEngine <EnchantCsv> engine = new FileHelperEngine <EnchantCsv>(Encoding.UTF8); string csvText = new FileInfo(helmEnchantCsvFile).Exists ? File.ReadAllText(helmEnchantCsvFile, Encoding.UTF8) : Util.ReadWebPage(repoURL + helmEnchantCsvFile, "", Encoding.UTF8); EnchantCsv[] records = engine.ReadString(csvText); foreach (EnchantCsv csvdata in records) { if (!SC.Enchantments.ContainsKey(csvdata.Description)) { Enchantment scData = new Enchantment(csvdata.Name); SC.Enchantments.Add(csvdata.Name, scData); SC.EnchantmentsDescriptions.Add(csvdata.Description, scData); Enchantment hcData = new Enchantment(csvdata.Name); HC.Enchantments.Add(csvdata.Name, hcData); HC.EnchantmentsDescriptions.Add(csvdata.Description, hcData); } SC.Enchantments[csvdata.Name].Load(csvdata); HC.Enchantments[csvdata.Name].Load(csvdata); } }
static void Main(string[] args) { // trimmed down contents... var contents = @"DATE,AUD,CAD,CHF" + Environment.NewLine + @"1/1/2000,88,71,3" + Environment.NewLine + @"2/1/2000,82,83,86"; // get the records var engine = new FileHelperEngine <FxConversionRateSpec>(); var records = engine.ReadString(contents); // get the header var currencies = contents .Substring(0, contents.IndexOf(Environment.NewLine)) // take the first line .Split(',') // split into currencies .Skip(1); // skip the 'Date' column // as IEnumerable<FxConversionRate> var rates = records.SelectMany( // for each record of Date, Double[] record => currencies.Zip(record.Rates, (c, r) => new { Currency = c, Rate = r }) // combine the rates array with the currency labels .Select( // for each of the anonymous typed records Currency, Double currencyRate => new FxConversionRate { Date = record.Date, Currency = currencyRate.Currency, Rate = currencyRate.Rate })); Assert.AreEqual(6, rates.Count(), "Exactly 6 records were expected"); Assert.That(rates.Single(x => x.Date == new DateTime(2000, 1, 1) && x.Currency == "AUD" && x.Rate == 88d) != null); Assert.That(rates.Single(x => x.Date == new DateTime(2000, 1, 1) && x.Currency == "CAD" && x.Rate == 71d) != null); Assert.That(rates.Single(x => x.Date == new DateTime(2000, 1, 1) && x.Currency == "CHF" && x.Rate == 3d) != null); Assert.That(rates.Single(x => x.Date == new DateTime(2000, 1, 2) && x.Currency == "AUD" && x.Rate == 82d) != null); Assert.That(rates.Single(x => x.Date == new DateTime(2000, 1, 2) && x.Currency == "CAD" && x.Rate == 83d) != null); Assert.That(rates.Single(x => x.Date == new DateTime(2000, 1, 2) && x.Currency == "CHF" && x.Rate == 86d) != null); Console.WriteLine("All tests passed OK."); Console.ReadKey(); }
public EmployeePayroll GetOutPutFile(string fileName) { var fhEngineDetail = new FileHelperEngine <EmployeePayrollDetail>(); var fhEngineHeader = new FileHelperEngine <EmployeePayrollHeader>(); var fullFileName = _sftpManagementService.SftpDownloadFile(fileName); if (!File.Exists(fullFileName)) { throw new HttpStatusException($"El archivo con el nombre indicado: {fileName} no existe en el SFTP.", HttpStatusCode.Forbidden); } var streamFile = _pgpEncryptionService.DescryptFileAsStream(fullFileName); using TextReader textReader = new StreamReader(streamFile); var employeePayroll = new EmployeePayroll() { EmployeePayrollDetail = fhEngineDetail.ReadStream(textReader), EmployeePayrollHeader = fhEngineHeader.ReadString(fhEngineDetail.HeaderText).FirstOrDefault() }; return(employeePayroll); }
private void LoadUniquesCsv() { FileHelperEngine <UniqueBaseTypeCsv> engine = new FileHelperEngine <UniqueBaseTypeCsv>(Encoding.UTF8); string csvText = new FileInfo(uniquesCsvFile).Exists ? File.ReadAllText("poe_uniques.csv", Encoding.UTF8) : Util.ReadWebPage(repoURL + "poe_uniques.csv", "", Encoding.UTF8); UniqueBaseTypeCsv[] records = engine.ReadString(csvText); foreach (UniqueBaseTypeCsv csvdata in records) { if (!SC.Uniques.ContainsKey(csvdata.BaseType)) { SC.Uniques[csvdata.BaseType] = new UniqueBaseType(csvdata.BaseType); HC.Uniques[csvdata.BaseType] = new UniqueBaseType(csvdata.BaseType); } SC.Uniques[csvdata.BaseType].Load(csvdata); HC.Uniques[csvdata.BaseType].Load(csvdata); } foreach (string baseType in SC.Uniques.Keys) { Sort(SC, baseType); Sort(HC, baseType); } }
static void Main(string[] args) { var engine = new FileHelperEngine(typeof(Format1)); // read in the data object[] importedObjects = engine.ReadString(@"""Date"",""Description"",""Original Description"",""Amount"",""Type"",""Category"",""Name"",""Labels"",""Notes"" ""2/02/2012"",""ac"",""ac"",""515.00"",""a"",""b"","""",""javascript://"" ""2/02/2012"",""test"",""test"",""40.00"",""a"",""d"",""c"","""","" """); // check that 2 records were imported Assert.AreEqual(2, importedObjects.Length); // check the values for the first record Format1 customer1 = (Format1)importedObjects[0]; Assert.AreEqual(DateTime.Parse("2/02/2012"), customer1.Date); Assert.AreEqual("ac", customer1.Description); Assert.AreEqual("ac", customer1.OriginalDescription); Assert.AreEqual(515.00, customer1.Amount); Assert.AreEqual("a", customer1.Type); Assert.AreEqual("b", customer1.Category); Assert.AreEqual("", customer1.Name); Assert.AreEqual("javascript://", customer1.Labels); Assert.AreEqual("", customer1.Notes); // check the values for the second record Format1 customer2 = (Format1)importedObjects[1]; Assert.AreEqual(DateTime.Parse("2/02/2012"), customer2.Date); Assert.AreEqual("test", customer2.Description); Assert.AreEqual("test", customer2.OriginalDescription); Assert.AreEqual(40.00, customer2.Amount); Assert.AreEqual("a", customer2.Type); Assert.AreEqual("d", customer2.Category); Assert.AreEqual("c", customer2.Name); Assert.AreEqual("", customer2.Labels); Assert.AreEqual(" ", customer2.Notes); }
public void WriteReadImage() { ImageClass ima = new ImageClass(); Bitmap bmp = new Bitmap(20, 10); bmp.SetPixel(10, 5, Color.Gainsboro); bmp.SetPixel(10, 7, Color.Navy); ima.MyImage = bmp; FileHelperEngine engine = new FileHelperEngine(typeof(ImageClass)); string data = engine.WriteString((IList) new object[] { ima }); ImageClass[] res = (ImageClass[])engine.ReadString(data); Assert.AreEqual(1, res.Length); Assert.IsNotNull(res[0].MyImage); Assert.AreEqual(typeof(Bitmap), res[0].MyImage.GetType()); Assert.AreEqual(Color.Gainsboro.R, ((Bitmap)res[0].MyImage).GetPixel(10, 5).R); Assert.AreEqual(Color.Gainsboro.G, ((Bitmap)res[0].MyImage).GetPixel(10, 5).G); Assert.AreEqual(Color.Gainsboro.B, ((Bitmap)res[0].MyImage).GetPixel(10, 5).B); Assert.AreEqual(Color.Navy.R, ((Bitmap)res[0].MyImage).GetPixel(10, 7).R); Assert.AreEqual(Color.Navy.G, ((Bitmap)res[0].MyImage).GetPixel(10, 7).G); Assert.AreEqual(Color.Navy.B, ((Bitmap)res[0].MyImage).GetPixel(10, 7).B); }
public void ReadString() { string data = "11121314901234" + Environment.NewLine + "10111314012345" + Environment.NewLine + "11101314123456" + Environment.NewLine + "10101314234567" + Environment.NewLine; engine = new FileHelperEngine(typeof(SampleType)); SampleType[] res; res = (SampleType[])engine.ReadString(data); Assert.AreEqual(4, res.Length); Assert.AreEqual(4, engine.TotalRecords); Assert.AreEqual(0, engine.ErrorManager.ErrorCount); Assert.AreEqual(new DateTime(1314, 12, 11), res[0].Field1); Assert.AreEqual("901", res[0].Field2); Assert.AreEqual(234, res[0].Field3); Assert.AreEqual(new DateTime(1314, 11, 10), res[1].Field1); Assert.AreEqual("012", res[1].Field2); Assert.AreEqual(345, res[1].Field3); }
static void Main(string[] args) { var engine = new FileHelperEngine <ImportRecord>(); string input = "id|name|comments|date" + Environment.NewLine + "01|edov|bla bla bla bla|2012-01-01" + Environment.NewLine + "02|john|bla bla bla bla|2012-01-02" + Environment.NewLine + "03|Pete|bla bla" + Environment.NewLine + "bla bla|2012-03-01" + Environment.NewLine + "04|Mary|bla bla bla bla|2012-01-01"; // Modify import to add quotes to multiline fields var inputSplitAtSeparator = input.Split('|'); // Add quotes around the field after every third '|' var inputWithQuotesAroundCommentsField = inputSplitAtSeparator.Select((x, i) => (i % 3 == 2) ? "\"" + x + "\"" : x); var inputJoinedBackTogether = String.Join("|", inputWithQuotesAroundCommentsField); ImportRecord[] validRecords = engine.ReadString(inputJoinedBackTogether); // Check the third record Assert.AreEqual("03", validRecords[2].Id); Assert.AreEqual("Pete", validRecords[2].Name); Assert.AreEqual("bla bla" + Environment.NewLine + "bla bla", validRecords[2].Comments); Assert.AreEqual("2012-03-01", validRecords[2].Date); Console.WriteLine("All assertions passed"); Console.ReadKey(); }
public void Convert(string sourcepath, string text, string destinationpath, string movedpath, string guid, string ApplicationName) { TimePoints.MarkNext(ApplicationName, guid.ToString(), 2); //string[] str1 = text.Split(':'); //int val1 = text.IndexOf("PO.IDENT"); //int val2 = text.IndexOf("PO.HEADER"); //string x = text.Substring(val1+9,val2-10); //Console.WriteLine(val1); //Console.WriteLine(val2); // Console.WriteLine(x); XElement ApplicationArea = new XElement("Application_Area"); foreach (String ln in File.ReadAllLines(sourcepath)) {//<-- read lines string[] str2 = ln.Split(':'); if (str2[0].Equals("PO.IDENT")) { var engine = new FileHelperEngine <POIDENT>(); //Console.WriteLine(str1[0]); var records = engine.ReadString(str2[1]); //Console.WriteLine(records); foreach (var record in records) { XElement PO_IDENT = new XElement("PO.IDENT", record.CreatorNameCode == "" ? null : new XElement("CreatorNameCode", record.CreatorNameCode), record.CreatorSoftwareCode == "" ? null : new XElement("CreatorSoftwareCode", record.CreatorSoftwareCode), record.InterfaceVersion == "" ? null : new XElement("InterfaceVersion", record.InterfaceVersion), record.TransactionCreateDate == "" ? null : new XElement("TransactionCreateDate", record.TransactionCreateDate), record.TransactionCreateTime == "" ? null : new XElement("TransactionCreateTime", record.TransactionCreateTime), record.DealerNumber == "" ? null : new XElement("DealerNumber", record.DealerNumber), record.StoreNumber == "" ? null : new XElement("StoreNumber", record.StoreNumber), record.AreaNumber == "" ? null : new XElement("AreaNumber", record.AreaNumber), record.DestinationNameCode == "" ? null : new XElement("DestinationNameCode", record.DestinationNameCode), record.DestinationSoftware == "" ? null : new XElement("DestinationSoftware", record.DestinationSoftware), record.TransactionTypeCode == "" ? null : new XElement("TransactionTypeCode", record.TransactionTypeCode), record.DealerCountry == "" ? null : new XElement("DealerCountry", record.DealerCountry), record.ReferenceID == "" ? null : new XElement("ReferenceID", record.ReferenceID), record.SenderPartyID == "" ? null : new XElement("SenderPartyID", record.SenderPartyID), record.SenderLocationID == "" ? null : new XElement("SenderLocationID", record.SenderLocationID)); //Console.WriteLine(PO_IDENT); ApplicationArea.Add(PO_IDENT); } } if (str2[0].Equals("PO.HEADER")) { var engine = new FileHelperEngine <POHEADER>(); //Console.WriteLine(str1[0]); var records = engine.ReadString(str2[1]); //Console.WriteLine(records); foreach (var record in records) { XElement PO_HEADER = new XElement("PO.HEADER", record.PartOrderNumnber == "" ? null : new XElement("Part_Order_Number", record.PartOrderNumnber), record.PartsOrderType == "" ? null : new XElement("Parts_Order_Type", record.PartsOrderType), record.Item == "" ? null : new XElement("Item", record.Item), record.PartsOrderAllowShipment == "" ? null : new XElement("Parts_Order_Allowback", record.PartsOrderAllowback), record.PartsOrderAllowShipment == "" ? null : new XElement("Parts_Order_AllowShipment", record.PartsOrderAllowShipment), record.PartsOrderPriority == "" ? null : new XElement("Parts_Order_Priority", record.PartsOrderPriority)); //Console.WriteLine(PO_HEADER); ApplicationArea.Add(PO_HEADER); } } if (str2[0].Equals("PO.BILLTO")) { var engine = new FileHelperEngine <POBILLTO>(); //Console.WriteLine(str1[0]); var records = engine.ReadString(str2[1]); //Console.WriteLine(records); foreach (var record in records) { XElement PO_BILLTO = new XElement("PO.BILLTO", record.CompanyName == "" ? null : new XElement("Company_Name", record.CompanyName), record.Address == "" ? null : new XElement("Address", record.Address), record.City == "" ? null : new XElement("City", record.City), record.State == "" ? null : new XElement("State", record.State), record.ZIP == "" ? null : new XElement("ZIP", record.ZIP)); //Console.WriteLine(PO_BILLTO); ApplicationArea.Add(PO_BILLTO); } } if (str2[0].Equals("PO.SHIPTO")) { var engine = new FileHelperEngine <POSHIPTO>(); //Console.WriteLine(str1[0]); var records = engine.ReadString(str2[1]); //Console.WriteLine(records); foreach (var record in records) { XElement PO_SHIPTO = new XElement("PO.SHIPTO", record.CompanyName == "" ? null : new XElement("Company_Name", record.CompanyName), record.Address == "" ? null : new XElement("Address", record.Address), record.City == "" ? null : new XElement("City", record.City), record.State == "" ? null : new XElement("State", record.State), record.ZIP == "" ? null : new XElement("ZIP", record.ZIP)); //Console.WriteLine(PO_SHIPTO); ApplicationArea.Add(PO_SHIPTO); } } if (str2[0].Equals("PO.LINEITEM")) { var engine = new FileHelperEngine <POLINEITEM>(); //Console.WriteLine(str1[0]); var records = engine.ReadString(str2[1]); //Console.WriteLine(records); foreach (var record in records) { string[] lineitem = { "Part_Number", "Quantity", "Bin_location", "Item_4", "Customer_name", "Item_6", "Item_7", "Item_8", "Item_9", "Item_10", "ID", "Item_12", "Item_13", "Item_14", "Internal_reference" }; XElement PO_LINEITEM = new XElement("PO.LINEITEM", record.PartsNumber == "" ? null : new XElement("Part_Number", record.PartsNumber), record.Quantity == "" ? null : new XElement("Quantity", record.Quantity), record.BinLocation == "" ? null : new XElement("Bin_Location", record.BinLocation), record.Item4 == "" ? null : new XElement("Item4", record.Item4), record.CustomerName == "" ? null : new XElement("Customer_Name", record.CustomerName), record.Item6 == "" ? null : new XElement("Item6", record.Item6), record.Item7 == "" ? null : new XElement("Item7", record.Item7), record.Item8 == "" ? null : new XElement("Item8", record.Item8), record.Item9 == "" ? null : new XElement("Item9", record.Item9), record.Item10 == "" ? null : new XElement("Item10", record.Item10), record.ID == "" ? null : new XElement("ID", record.ID), record.Item12 == "" ? null : new XElement("Item12", record.Item12), record.Item13 == "" ? null : new XElement("Item13", record.Item13), record.Item14 == "" ? null : new XElement("Item14", record.Item14), record.InternalReference == "" ? null : new XElement("Internal_Reference", record.InternalReference)); //Console.WriteLine(PO_LINEITEM); ApplicationArea.Add(PO_LINEITEM); } } } //Console.WriteLine(ApplicationArea.ToString()); // XmlWriter w=XmlWriter.Create(destinationpath + "NEW.xml"); TimePoints.MarkNext(ApplicationName, guid.ToString(), 3); File.WriteAllText(destinationpath, ApplicationArea.ToString()); Console.WriteLine("Converted Successfully"); TimePoints.MarkNext(ApplicationName, guid.ToString(), 4); File.Move(sourcepath, movedpath); Console.ReadLine(); }
/// <summary> /// This function gets current prices for all stock symbols on the nasdaq exchange. It then stores /// all symbols and their prices in the database along with the current date. /// </summary> /// <param name="bw">BackgroundWorker to report progress to main thread</param> /// <returns>Returns true if stocks succcessfully are queried and new entries are created in the /// database.</returns> public int getCurrentQuotes(BackgroundWorker bw) { int success = -1; //-1 = function failed //pull all nasdaq stocks for price record in database HttpWebRequest csv_req = (HttpWebRequest)WebRequest.Create("http://www.nasdaq.com/screening/companies-by-name.aspx?letter=0&exchange=nasdaq&render=download"); csv_req.KeepAlive = false; csv_req.ProtocolVersion = HttpVersion.Version10; bw.ReportProgress(1); try { HttpWebResponse csv_resp = (HttpWebResponse)csv_req.GetResponse(); bw.ReportProgress(2); //build response into reader then into string for filehelper to open StreamReader response_reader = new StreamReader(csv_resp.GetResponseStream()); string stock_csv = response_reader.ReadToEnd(); response_reader.Close(); bw.ReportProgress(3); FileHelperEngine engine = new FileHelperEngine(typeof(cStock)); cStock[] res = (cStock[])engine.ReadString(stock_csv); //build results into array for easy access bw.ReportProgress(4); //more stuffs just to ensure its working. must refactor this asap. cDatabaseManager db = new cDatabaseManager(); bool update_prices = false; //ensure prices aren't updated too frequently if ((DateTime.Now - db.getLastStockUpdateTime()).TotalHours >= MIN_HOURS_BETWEEN_UPDATE) { update_prices = true; } else { success = -2; //-2 = stocks already updated with past 12 hours for (int i = 5; i < 100; ++i) { bw.ReportProgress(i); } } if (update_prices == true) { float percent = 0.0f; int count = 0; success = 1; //1 = update success foreach (cStock stock in res) { int stock_id = db.addStockSymbol(stock._symbol); //add symbol Decimal lastSale; //used to convert string of most recent sale if (Decimal.TryParse(stock._lastSalePrice, out lastSale)) //removes "n/a" entries { if (!db.addStockQuote(stock_id, lastSale)) { success = -3; //-3 one or more stocks failed to insert price to db } } percent = ((float)count / (float)res.Length) * 100f; //percent complete if (percent < 5) //acount for the 5 percent before loop begins { percent += 5 - percent; } bw.ReportProgress((int)percent); ++count; } } } catch (Exception e) { Console.WriteLine("Exception caught stock quote retrieval & storage (probably can't access network):\n"); Console.WriteLine(e.Message); success = -1; //should change success to integer to determine which message box to pop (no internet, stream cannot be read etc.) bw.ReportProgress(100); } return(success); }
private void cmdRun_Click(object sender, EventArgs e) { FileHelperEngine engine = new FileHelperEngine(typeof(CustomersVerticalBar)); grid1.SelectedObject = engine.ReadString(txtData.Text); }
public List <MessageDto> AddMessage(Message message) { Message commandResultMessage = null; ApplicationUser chatBot = null; if (message.Content.StartsWith("/")) { message.MessageType = MessageType.Command; var temp = message.Content; temp = temp.Substring(1, temp.Length - 1); var messageParts = temp.Split('='); if (messageParts.Length != 2) { message.Content += " (Command in wron format)"; } else { var command = messageParts[0]; var code = messageParts[1]; ChatCommand chatCommand; var validCommand = Enum.TryParse(command, true, out chatCommand); if (!validCommand || string.IsNullOrEmpty(code)) { message.Content += " (Command code not found)"; } else { switch (chatCommand) { case ChatCommand.Stock: try { var csvCode = _httpClientManager.Get(code); var engine = new FileHelperEngine <CsvFields>(); var csvFields = engine.ReadString(csvCode).ToList(); var row = csvFields.FirstOrDefault(); chatBot = _dbContext.Users.FirstOrDefault(x => x.UserType == UserType.Bot && x.FirstName == "ChatBot1"); commandResultMessage = new Message { Content = $"{row.Symbol} quote is ${row.Open} per share", CreatedBy = chatBot.Id, ChatroomId = message.ChatroomId, MessageType = MessageType.Text }; message.Content += " (Command executed)"; } catch (Exception ex) { message.Content += " (Error reading the result of this code)"; } break; } } } } if (message.MessageType != MessageType.Command) { _dbContext.Messages.Add(message); } if (commandResultMessage != null) { _dbContext.Messages.Add(commandResultMessage); } _dbContext.SaveChanges(); var user = _dbContext.Users.Find(message.CreatedBy); var result = new List <MessageDto>() { new MessageDto { Id = message.Id, ChatroomId = message.ChatroomId, Content = message.Content, CreatedBy = user.FirstName + " " + user.LastName, CreatedDate = message.CreatedDate != null ? message.CreatedDate : DateTimeOffset.Now, MessageType = message.MessageType }, }; if (commandResultMessage != null) { result.Add( new MessageDto { Id = commandResultMessage.Id, ChatroomId = commandResultMessage.ChatroomId, Content = commandResultMessage.Content, CreatedBy = chatBot.FirstName, CreatedDate = commandResultMessage.CreatedDate, MessageType = commandResultMessage.MessageType }); } return(result); }
public void NullString() { var engine = new FileHelperEngine <SampleType>(); engine.ReadString(null); }
public IEnumerable <SnbDepositPayment> Process(IEnumerable <string> lines) { var fields = new Dictionary <string, int> { { "DocumentDate", 8 }, { "PostingDate", 8 }, { "DocumentType", 2 }, { "Currency", 5 }, { "ExchangeRate", 9 }, { "Reference", 16 }, { "DocumentHeaderText", 25 }, { "PostingKey", 2 }, { "AccountNo", 10 }, { "Amount", 15 }, { "CostCenter", 10 }, { "Quantity", 13 }, { "Assignment", 2 }, { "Text", 18 }, { "ReferenceKey", 50 }, { "SequenceNumber", 5 } }; var positions = fields.Values.ToArray(); var names = fields.Keys.ToArray(); var sequence = 0; var engine = new FileHelperEngine <IposDepositPayment>(); var transactions = new List <IposDepositPayment>(); var payments = new List <SnbDepositPayment>(); foreach (var line in lines) { if (line.StartsWith("EOF")) { continue; } /**/ for (int i = 0; i < positions.Length; i++) { var value = line.Substring(positions.Take(i).Sum(x => x), positions[i]); Debug.Write($"{names[i]} = {value}, "); } Debug.WriteLine(""); Debug.WriteLine("--------------------"); var record = engine.ReadString(line)[0]; if (record.SequenceNumber == sequence) { transactions.Add(record); continue; } sequence = record.SequenceNumber; if (transactions.Count > 0) { var snb = SnbDepositPayment.Parse(transactions.ToArray()); payments.Add(snb); } transactions = new List <IposDepositPayment> { record }; } var snb2 = SnbDepositPayment.Parse(transactions.ToArray()); payments.Add(snb2); return(payments); }
public void NullString() { engine = new FileHelperEngine(typeof(SampleType)); engine.ReadString(null); }
public void ArrayFieldsComplex() { var engine = new FileHelperEngine <ArrayComplexType>(); engine.ReadString(""); }