tirsdag den 12. februar 2019

csvParser using csvHelper from NuGet

public static myDataTabel ReadCSV(String filePath)
        {
            //get file encoding
            FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read);
            Encoding r = GetType(fs);
            fs.Close();

            DataTable dt = new DataTable();
            StreamReader reader = new StreamReader(filePath, r);
            CsvReader csv = new CsvReader(reader);
            CsvDataReader dr = new CsvDataReader(csv);
            dt.Load(dr);

            myDataTabel myDataTabel = new myDataTabel();
            myDataTabel.dataTabel = dt;
            myDataTabel.encoding = r;

            return myDataTabel;
        }

csvparser1

CSV parser, men fanger ikke dobbelt linebreaks

 private static myDataTabel GetDataTabletFromCSVFile(string csv_file_path)
        {
            DataTable csvData = new DataTable();
            try
            {
                using (TextFieldParser csvReader = new TextFieldParser(csv_file_path))
                {
                    csvReader.SetDelimiters(new string[] { "," });
                    csvReader.HasFieldsEnclosedInQuotes = true;
                    string[] colFields = csvReader.ReadFields();
                    foreach (string column in colFields)
                    {
                        DataColumn datecolumn = new DataColumn(column);
                        datecolumn.AllowDBNull = true;
                        csvData.Columns.Add(datecolumn);
                    }
                    while (!csvReader.EndOfData)
                    {
                        string[] fieldData = csvReader.ReadFields();
                        //Making empty value as null
                        for (int i = 0; i < fieldData.Length; i++)
                        {
                            if (fieldData[i] == "")
                            {
                                fieldData[i] = null;
                            }
                        }
                        csvData.Rows.Add(fieldData);
                    }
                }
            }
            catch (Exception ex)
            {
            }

            //get file encoding
            FileStream fs = new FileStream(csv_file_path, FileMode.Open, FileAccess.Read);
            Encoding r = GetType(fs);
            fs.Close();

            myDataTabel myDataTabel = new myDataTabel();
            myDataTabel.dataTabel = csvData;
            myDataTabel.encoding = r;

            return myDataTabel;


        }

tirsdag den 5. februar 2019

Complile into a single .exe

https://www.youtube.com/watch?v=a_r3tQ06xpE

C:\Program Files (x86)\Microsoft\ILMerge\ILMerge.exe


Command:
ilmerge C:\Users\Joe\Desktop\ILMergeTest.exe C:\Users\Joe\Desktop\DevComponents.DotNetBar2.dll /out:C:\Users\Joe\Desktop\Tool.exe /target:winexe /targetplatform:"v4,C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.7.2" /ndebug