Class for reading from comma-separated-value (CSV) files
Наследование: CsvFileCommon, IDisposable
Пример #1
0
        private void showButton_Click(object sender, EventArgs e)
        {
            FileStream aStream = new FileStream(fileLocation, FileMode.OpenOrCreate);
            CsvFileReader aReader = new CsvFileReader(aStream);
            List<string> aPeronRecord = new List<string>();


            personListView.Items.Clear();



            while (aReader.ReadRow(aPeronRecord))
            {
                ListViewItem listViewItem = new ListViewItem(new string[]
                {
                    aPeronRecord[0],
                    aPeronRecord[1],
                    aPeronRecord[2],
                    aPeronRecord[3],
                    aPeronRecord[4]
                
                }
            );
                personListView.Items.Add(listViewItem);
            }
            aStream.Close();
        }
Пример #2
0
        public static void CsvLoadTripRoutes(string filename, bool lngFirst)
        {
            // load trip routes
            Dictionary<string, LinkedList<Waypoint>> routes = new Dictionary<string, LinkedList<Waypoint>>();
            using (CsvFileReader reader = new CsvFileReader(filename))
            {
                CsvRow row = new CsvRow();
                while (reader.ReadRow(row, ','))
                {
                    string routeID = row[0];
                    double distance = 0;
                    double lat = Convert.ToDouble(lngFirst ? row[2] : row[1]);
                    double lng = Convert.ToDouble(lngFirst ? row[1] : row[2]);
                    if (routes.ContainsKey(routeID))
                        distance = routes[routeID].First.Value.GetDistance(new Location(lat, lng, "null"));
                    Waypoint waypoint = new Waypoint(lat, lng, TimeSpan.Parse(row[3]), distance, row[4].Replace("\"", ""));

                    // Scenario #1
                    if (!routes.ContainsKey(routeID))
                        routes[routeID] = new LinkedList<Waypoint>();
                    routes[routeID].AddLast(waypoint);

                }
            }
            foreach (LinkedList<Waypoint> w in routes.Values)
            {
                Route r = new Route(w.ToArray());
                string key = Route.GetKey(r.start, r.end);
                MapTools.routes.Add(key, r);
            }
        }
Пример #3
0
 public Dictionary<string, Player> readPlayers()
 {
     Dictionary<string, Player> listPlayers = new Dictionary<string, Player>();
     using (CsvFileReader reader = new CsvFileReader(file))
     {
         CsvRow row = new CsvRow();
         while (reader.ReadRow(row))
         {
             listPlayers.Add(row[Constants.FName], new Player(row[Constants.FName], boolFromString(row[Constants.FBoolTerran]),
                 boolFromString(row[Constants.FBoolZerg]), boolFromString(row[Constants.FBoolProtoss]), boolFromString(row[Constants.FBoolRandom])));
             Player temp = listPlayers[row[Constants.FName]];
             int.TryParse(row[Constants.FVictoryTerran], out temp.Victory[Constants.Terran]);
             int.TryParse(row[Constants.FVictoryZerg], out temp.Victory[Constants.Zerg]);
             int.TryParse(row[Constants.FVictoryProtoss], out temp.Victory[Constants.Protoss]);
             int.TryParse(row[Constants.FVictoryRandom], out temp.Victory[Constants.Random]);
             int.TryParse(row[Constants.FDefeatTerran], out temp.Defeat[Constants.Terran]);
             int.TryParse(row[Constants.FDefeatZerg], out temp.Defeat[Constants.Zerg]);
             int.TryParse(row[Constants.FDefeatProtoss], out temp.Defeat[Constants.Protoss]);
             int.TryParse(row[Constants.FDefeatRandom], out temp.Defeat[Constants.Random]);
             int.TryParse(row[Constants.FEloTerran], out temp.Elo[Constants.Terran]);
             int.TryParse(row[Constants.FEloZerg], out temp.Elo[Constants.Zerg]);
             int.TryParse(row[Constants.FEloProtoss], out temp.Elo[Constants.Protoss]);
             int.TryParse(row[Constants.FEloRandom], out temp.Elo[Constants.Random]);
         }
     }
     return listPlayers;
 }
Пример #4
0
        private void loadSNPSPToolStripMenuItem_Click(object sender, EventArgs e)
        {
            _openFileDialog.FileName = "SNPCC.csv";
            _openFileDialog.Filter = "csv files (*.csv)|*.csv";
            _openFileDialog.DefaultExt = "txt";
            _openFileDialog.FilterIndex = 2;
            _openFileDialog.AddExtension = true;
            if (_openFileDialog.ShowDialog() == DialogResult.OK)
            {
                string fileName = _openFileDialog.FileName;
                CsvFileReader csv = new CsvFileReader(fileName);
                char[] _separators = new char[] { '\n', '"', ',' };
                CsvRow row = new CsvRow();
                bool entering = true;
                while (entering == true)
                {
                    entering = csv.ReadRow(row);
                    staters.Add(new Stater(row[1], row[0]));
                    char[] bar = row[2].ToCharArray();
                    string bs = Convert.ToString(bar[0]) + Convert.ToString(bar[1]) + Convert.ToString(bar[2]) + Convert.ToString(bar[3]);
                    staters[staters.Count - 1].Barcode = Convert.ToInt32(bs);
                    staters[staters.Count - 1].City = row[3];
                    staters[staters.Count - 1].County = row[4];
                }

                csv.Close();
                staters.RemoveAt(staters.Count - 1);
                List<Stater> testing = staters;
            }
        }
        private void saveButton_Click(object sender, EventArgs e)
        {
            FileStream aStreamForReading = new FileStream(fileLocation, FileMode.Open);
            CsvFileReader aReader = new CsvFileReader(aStreamForReading);
            List<string> aRecord = new List<string>();

            while (aReader.ReadRow(aRecord))
            {

                string regNo = aRecord[0];
                if (regNoTextBox.Text == regNo)
                {
                    MessageBox.Show(@"Reg no already exists");
                    aStreamForReading.Close();
                    return;
                }
            }
            aStreamForReading.Close();

            FileStream aStream = new FileStream(fileLocation, FileMode.Append);
            CsvFileWriter aWriter = new CsvFileWriter(aStream);
            List<string> aStudentRecord = new List<string>();
            aStudentRecord.Add(regNoTextBox.Text);
            aStudentRecord.Add(nameTextBox.Text);
            aWriter.WriteRow(aStudentRecord);
            aStream.Close();
        }
Пример #6
0
        public EventPointsReader(String filePath, Boolean skipHeader)
        {
            this.EventPoints = new List<EventPoint>();

            CsvFileReader reader = new CsvFileReader(filePath);

            Boolean headerSkipped = false;

            while (true)
            {
                CsvRow row = new CsvRow();
                if (reader.ReadRow(row))
                {
                    if ((skipHeader && headerSkipped) ||
                        !skipHeader)
                    {
                        EventPoint ep = new EventPoint();
                        ep.LongCode = row[0];
                        ep.ShortCode = row[1];
                        ep.DateTimeFrom = DateTime.ParseExact(row[2], "yyyy-MM-dd HH:mm:ss.fff", null);
                        ep.DateTimeTo = DateTime.ParseExact(row[3], "yyyy-MM-dd HH:mm:ss.fff", null);
                        ep.RangeMax = Convert.ToDouble(row[4]);
                        ep.RangeMin = Convert.ToDouble(row[5]);

                        this.EventPoints.Add(ep);
                    }
                    headerSkipped = true;
                }
                else
                {
                    break;
                }
            }
        }
        private void btnShow_Click(object sender, EventArgs e)
        {
            FileStream aStream = new FileStream(fileLocation, FileMode.Open);
            CsvFileReader aReader = new CsvFileReader(aStream);

            List<string> outList = new List<string>();

            lstViewOut.SelectedIndices[0];
        }
 public void TestCsvFileReadUsingSoundex()
 {
     var reader = new CsvFileReader();
     reader.RecordBuilder = new SinglePropertyRecordBuilder(@"Name");
     reader.ValueFactory = new SoundexValueFactory(5);
     var dataset = reader.ReadFile(new FileInfo(@"data/ReferenceDataset1.csv"), true, ',');
     Assert.AreEqual(1, dataset.Records.Count, @"Record count is wrong!");
     foreach (var record in dataset.Records)
     {
         Assert.AreEqual(1, record.Properties.Count, @"Property count is wrong!");
         Assert.AreEqual(@"A4253", record.Properties[@"Name"], @"Soundex code is wrong!");
     }
 }
Пример #9
0
 private static IList<Record> LoadRecords(string fileContent)
 {
     const string filepath = "filepath";
     var mocks = new MockRepository(MockBehavior.Strict);
     Mock<IFileSystem> fileSystemMock = mocks.Create<IFileSystem>();
     fileSystemMock.Setup(it => it.OpenFileForRead(filepath))
         .Returns(new MemoryStream(Encoding.ASCII.GetBytes(fileContent)));
     IFileSystem fileSystem = fileSystemMock.Object;
     var reader = new CsvFileReader(fileSystem);
     reader.Open(filepath);
     IList<Record> records = new List<Record>();
     while (reader.MoveNext()) {
         records.Add(reader.CurrentRecord);
     }
     return records;
 }
        private void btnEntryShow_Click(object sender, EventArgs e)
        {
            FileStream aStream = new FileStream(fileLocation, FileMode.Open);
            CsvFileReader aReader = new CsvFileReader(aStream);

            List<string> record = new List<string>();

            while (aReader.ReadRow(record))
            {
                string bill = record[0];
                double aBill = Convert.ToDouble(bill);
                aBill += aBill;
                txtBoxTotalExpns.Text = aBill.ToString();
            }
            aStream.Close();
        }
        private void showButton_Click(object sender, EventArgs e)
        {
            FileStream aStream = new FileStream(fileLocation, FileMode.Open);
            CsvFileReader aReader = new CsvFileReader(aStream);
            List<string> aStudentRecord = new List<string>();

            studentListBox.Items.Clear();

            while (aReader.ReadRow(aStudentRecord))
            {
                string regNo = aStudentRecord[0];
                string name = aStudentRecord[1];
                studentListBox.Items.Add(regNo + " " + name);
            }
            aStream.Close();
        }
Пример #12
0
        private void saveButton_Click(object sender, EventArgs e)
        {

            FileStream aStream = new FileStream(fileLocation, FileMode.OpenOrCreate);
           
            CsvFileReader aReader = new CsvFileReader(aStream);
            List<string> aPeronRecord = new List<string>();


            //personListView.Items.Clear();



            while (aReader.ReadRow(aPeronRecord))
            {
                if (aPeronRecord[2] == personalCnTextBox.Text)
                {
                    MessageBox.Show("conflict");

                    aStream.Close();
                    return;
                }
            }
            aStream.Close();



            FileStream aStream2 = new FileStream(fileLocation, FileMode.Append);
            CsvFileWriter aWriter = new CsvFileWriter(aStream2);
            List<string> aPersonRecod = new List<string>();

            aPersonRecod.Add(nameTextBox.Text);
            aPersonRecod.Add(emailTextBox.Text);
            aPersonRecod.Add(personalCnTextBox.Text);
            aPersonRecod.Add(homeCnTextBox.Text);
            aPersonRecod.Add(homeAddressTextBox.Text);

            aWriter.WriteRow(aPersonRecod);

            aStream2.Close();

            
                    


        }
Пример #13
0
        private void showAllButton_Click(object sender, EventArgs e)
        {
            FileStream aStream = new FileStream(fileLocation, FileMode.Open);
            CsvFileReader aReader = new CsvFileReader(aStream);

            List<string> addressBook = new List<string>();

            while (aReader.ReadRow(addressBook))
            {
                string name = addressBook[0];
                string email = addressBook[1];
                string personalContact = addressBook[2];
                string homeContact = addressBook[3];
                string homeAddress = addressBook[4];

                addressListBox.Items.Add(name + " " + email + " " + personalContact + " " + homeContact + " " + homeAddress);
            }
            aStream.Close();
        }
        public void TestWritingCsvRecords()
        {
            var reader = new CsvFileReader();
            var dataset = reader.ReadFile(new FileInfo(@"data/ReferenceDataset1.csv"), true, ',');
            Assert.AreEqual(1, dataset.Records.Count, @"Record count is wrong!");

            var record = Enumerable.First<IReferenceRecord>(dataset.Records);
            const string Key = @"Name";

            var indexWriter = new IndexFileWriter();
            var indexFile = new FileInfo(Path.GetTempFileName());
            indexWriter.WriteFile(indexFile, dataset.Records);

            var indexReader = new IndexFileReader();
            var writtenRecords = indexReader.ReadFile(indexFile);
            var writtenRecord = Enumerable.First<IReferenceRecord>(writtenRecords);
            Assert.AreEqual(record.Properties.Count, writtenRecord.Properties.Count, @"The number of properties do not match!");
            Assert.IsTrue(writtenRecord.Properties.ContainsKey(@"Name"), @"There is no property having a key equal to 'Name'!");
            Assert.AreEqual(record.Properties[Key], writtenRecord.Properties[Key], @"The property values do not match!");
        }
Пример #15
0
        private static void InMemoryFileWithNoHeader()
        {
            Console.WriteLine("Test In Memory File With No Header");
            var csvDefinition = new CsvDefinition
                {
                    Header = "ClientId|FirstName|LastName|Occupation|City",
                    FieldSeparator = '|'
                };

            var csvWithNoHeader = new CsvFileReader<Client>(
                new StringReader("1|Pascal|Ganaye|CodeMonkey|Macon\r" +
                                 "2|Mick|Jagger|Singer|Dartford"), csvDefinition
                );
            foreach (var c in csvWithNoHeader)
                Console.WriteLine(string.Format("Client #{0}: {1} ({2} in {3})",
                                                c.ClientId,
                                                c.FirstName + (string.IsNullOrEmpty(c.MiddleName) ? " " : " " + c.MiddleName + " ") + c.LastName,
                                                c.Occupation,
                                                c.City));
        }
        public List<string> CreateInsertQueries(string fileName)
        {
            List<string> queries = new List<string>();

            CsvFileReader reader = new CsvFileReader(fileName);

            bool firstRowRead = false;
            while (true)
            {
                if (reader.EndOfStream)
                {
                    break;
                }

                CsvRow row = new CsvRow();
                reader.ReadRow(row);

                if (!firstRowRead)
                {
                    firstRowRead = true;
                    continue;
                }

                if (row[4].CompareTo("USD") == 0)
                {
                    continue;
                }

                string ticker = String.Format("USD{0} Curncy", row[4]);
                string desc = String.Format("{0} / 1 usd currency", row[0]);
                string queryDelete = String.Format(
                    "delete from product_list where ticker = '{0}'", ticker);
                string queryInsert = String.Format(
                    "insert into product_list values ('{0}', 'USD', '{1}', 0, 0, 'Index')",
                    ticker, desc);
                queries.Add(queryDelete);
                queries.Add(queryInsert);
            }

            return queries;
        }
Пример #17
0
        /// <summary> Reads the earthquakes from a csv file and adds them to a clusterer. The clusterer then groups
        /// them to clusters. </summary>
        /// <returns> Documentation in progress... </returns>
        public static IEnumerable<Location> ReadCSVFile()
        {
            var filePath = AppDomain.CurrentDomain.BaseDirectory + @"wikilocations25000.csv";
            using (var reader = new CsvFileReader(filePath, (char)0x09))
            {
                var row = new CsvRow();
                while (reader.ReadRow(row))
                {
                    if (row.Count < 3)
                        continue;

                    double x, y;
                    bool parsed = Double.TryParse(row[2], NumberStyles.Float, CultureInfo.InvariantCulture, out x);
                    x = parsed ? x : Double.NaN;
                    parsed = Double.TryParse(row[1], NumberStyles.Float, CultureInfo.InvariantCulture, out y);
                    y = parsed ? y : Double.NaN;
                    var post = new Location { Title = row[0], Coordinate = new Point(x, y) };
                    yield return post;
                }
            }
        }
Пример #18
0
        // GET api/product/5
        public IEnumerable<ProductItem> Get(int id)
        {
            List<ProductItem> productList = new List<ProductItem>();

            int rowid = 0;
            // Read sample data from CSV file
            using (CsvFileReader reader = new CsvFileReader(productfilePath))
            {
                CsvRow row = new CsvRow();

                while (reader.ReadRow(row))
                {
                    if (rowid > 0)
                    {
                        productList.Add(new ProductItem() { ProductId = Convert.ToInt32(row[0]), Name = row[1], ImageUrl = row[2], Price = Convert.ToDouble(row[3]), Calories = Convert.ToInt32(row[4]) });
                    }
                    rowid++;
                }
            }
            return productList.FindAll(product=>product.ProductId==id);
        }
Пример #19
0
        public CsvToStringQueries(String fileName, String tableName)
        {
            this._fileName = fileName;
            this._tableName = tableName;
            CsvFileReader reader = new CsvFileReader(fileName);
            CsvRow header = new CsvRow();
            reader.ReadRow(header);

            while (true)
            {
                if (reader.EndOfStream)
                {
                    break;
                }

                CsvRow body = new CsvRow();
                reader.ReadRow(body);
                String query = CreateQuery(body, tableName);

                this._queries.Add(query);
            }
        }
Пример #20
0
        private void showButton_Click(object sender, EventArgs e)
        {
            FileStream aStream = new FileStream(fileLocation, FileMode.Open);
            CsvFileReader aReader = new CsvFileReader(aStream);

            List<string> aEmployeeRecord = new List<string>();

            double total = 0;

            while (aReader.ReadRow(aEmployeeRecord))
            {
                string employeeName = aEmployeeRecord[0];
                string id = aEmployeeRecord[1];
                string salaryAmount = aEmployeeRecord[2];

                total += Convert.ToDouble(salaryAmount);

                employeeListBox.Items.Add(employeeName + " " + id + " " + salaryAmount);
                totalAmountTextBox.Text = Convert.ToString(total);
            }
            aStream.Close();
        }
        public static IEnumerable<Record> DeserializeRecordsCsv(string path)
        {
            if (!File.Exists(path))
            {
                throw new FileNotFoundException(
                    "The file at the specified path could not be found.");
            }

            List<Record> retList = new List<Record>();

            using (CsvFileReader reader = new CsvFileReader(path))
            {
                CsvRow headers = new CsvRow();
                reader.ReadRow(headers);
                if (headers != ExpectedColumnHeaders.ToList())
                {
                    throw new Exception("CSV file headers are invalid.");
                }

                CsvRow row = new CsvRow();
                while (reader.ReadRow(row))
                {
                    retList.Add(new Record
                    {
                        Id = Convert.ToInt32(row[0]),
                        GivenName = row[1],
                        Surname = row[2],
                        StreetAddress = row[3],
                        City = row[4],
                        State = row[5],
                        ZipCode = row[6],
                        EmailAddress = row[7],
                        TelephoneNumber = row[8]
                    });
                }
            }

            return retList;
        }
        private void btnSave_Click(object sender, EventArgs e)
        {
            FileStream aFileStream = new FileStream(fileLocation, FileMode.Open);

            CsvFileReader aReader = new CsvFileReader(aFileStream);

            List<string> aRecordList = new List<string>();

            while (aReader.ReadRow(aRecordList))
            {
                string number = aRecordList[0];

                if(number == txtPhoneNumber.Text)
                {
                    MessageBox.Show("Wrong Entry");
                    aFileStream.Close();
                    return;
                }
            }

            aFileStream.Close();

            FileStream aStream = new FileStream(fileLocation, FileMode.Append);
            CsvFileWriter aWriter = new CsvFileWriter(aStream);

            List<string> addressRecord = new List<string>();

            addressRecord.Add(txtPhoneNumber.Text);
            addressRecord.Add(txtName.Text);
            addressRecord.Add(txtEmail.Text);
            addressRecord.Add(txtAddress.Text);
            addressRecord.Add(txtHomePhone.Text);

            aWriter.WriteRow(addressRecord);

            aStream.Close();
        }
Пример #23
0
        /// <summary>
        /// Reads the csv file, decides what type of words are stored there and put them into Output list
        /// </summary>
        /// <param name="worker"></param>
        public void ReadFile(BackgroundWorker worker)
        {
            // Initialize lines numbers
            int oldProgress = 0;
            LinesNumber = File.ReadLines(this.filename).Count(); // don't need to close, it closes automatically
            LinesProcessed = 0;
            try
            {
                /* Using statement will call a Disposable object on the reader object after exiting using scope
                   This will ensure secure resources disposal
                   Use this construction for reading files or any other resource-sensitive objects */
                using (CsvFileReader reader = new CsvFileReader(this.filename))
                {
                    CsvRow row = new CsvRow();
                    while (reader.ReadRow(row))
                    {
                        ParseRowList(row);

                        // Calculate and report progress in percentage
                        LinesProcessed++;
                        double progress = ((double)LinesProcessed / (double)LinesNumber) * 100;

                        // report only if there was was a whole change in progress, 1->2, 56->57 etc.
                        if ((int)progress != oldProgress)
                        {
                            worker.ReportProgress((int)progress); // Progress will be reported only 100 times
                        }

                        oldProgress = (int)progress;
                    }
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Пример #24
0
 private static void LoadGeoLocationNames()
 {
     using (CsvFileReader reader = new CsvFileReader(locationNames_Filename))
     {
         CsvRow row = new CsvRow();
         while (reader.ReadRow(row, ','))
             locationNames.Add(row[0], row[1]);
     }
 }
Пример #25
0
 private static void LoadGeoLocationAddress()
 {
     using (CsvFileReader reader = new CsvFileReader(locationAddresses_Filename))
     {
         CsvRow row = new CsvRow();
         while (reader.ReadRow(row, ','))
             locationAddresses.Add(row[0], new Pair<string, string>(row[1], row[2]));
     }
 }
 public void ThenIShouldSeeAllValidationErrorsInTheFile()
 {
     CsvFileReader.CsvDataFileCompare(Stage2Errors);
 }
Пример #27
0
    protected void btnOpenCsv_Click_save(object sender, EventArgs e)
    {
        //FileUpload fu = new FileUpload();
        string filename = "";

        if (fu.HasFile)
        {
            filename = Path.GetFullPath(fu.FileName);
            //filename = fu.PostedFile.FileName;
        }
        List <string> pmidList = new List <string>();

        //CSVReader reader = new CSVReader(FileUpload1.PostedFile.InputStream);   27:        //get the header   28:        string[] headers = reader.GetCSVLine();           29:        DataTable dt = new DataTable();   30:        //add headers   31:        foreach (string strHeader in headers)   32:            dt.Columns.Add(strHeader);   33:     34:        string[] data;   35:        while ((data = reader.GetCSVLine()) != null)   36:            dt.Rows.Add(data);   37:        //bind gridview   38:        gv.DataSource = dt;   39:        gv.DataBind();

        using (CsvFileReader reader = new CsvFileReader(filename))
        {
            CsvRow row = new CsvRow();
            while (reader.ReadRow(row))
            {
                foreach (string s in row)
                {
                    pmidList.Add(s);
                }
            }
        }


        /*
         * FileUpload fu = new FileUpload();
         * if (fu.HasFile)
         * {
         *  try
         *  {
         *      string filename = Path.GetFileName(fu.FileName);
         *      string ary;
         *      StreamReader sr = new StreamReader(filename);
         *      int placeholder = 0;
         *    //  while (sr.Peek != -1)
         *      //{
         *     // }
         *
         *
         *      //fu.SaveAs(Server.MapPath("~/") + filename);
         *      //StatusLabel.Text = "Upload status: File uploaded!";
         *  }
         *  catch (Exception ex)
         *  {
         *      //StatusLabel.Text = "Upload status: The file could not be uploaded. The following error occured: " + ex.Message;
         *  }
         * }
         */
        /*
         * if (fu..ShowDialog() == DialogResult.OK)
         * {
         *  System.IO.StreamReader sr = new
         *     System.IO.StreamReader(openFileDialog1.FileName);
         *  MessageBox.Show(sr.ReadToEnd());
         *  sr.Close();
         * }
         */
    }
Пример #28
0
        private void category_selectionButton_Click(object sender, EventArgs e)
        {
            infolistView.Items.Clear();

            FileStream    aStream = new FileStream(pathName, FileMode.Open);
            CsvFileReader csvReader = new CsvFileReader(aStream);
            List <string> infoList = new List <string>();
            double        salary, totalAmount = 0;

            while (csvReader.ReadRow(infoList))
            {
                if (view_categorycomboBox.Text == "House Rent")
                {
                    //string search = infoList[0];
                    string gainword = view_categorycomboBox.Text;
                    //bool b=true;
                    ListViewItem myView = new ListViewItem(infoList[0]);
                    if (infoList[1].ToLower().Contains(gainword.ToLower()))
                    {
                        //showalllistView.Items.Add(aStudentDataRead[0]);
                        for (int i = 1; i < 3; i++)
                        {
                            myView.SubItems.Add(infoList[i]);
                        }
                        infolistView.Items.Add(myView);
                        salary       = Convert.ToDouble(infoList[0]);
                        totalAmount += salary;
                    }
                    total_amounttextBox.Text = totalAmount.ToString();
                }
                else if (view_categorycomboBox.Text == "Utility Bill")
                {
                    string search   = infoList[0];
                    string gainword = view_categorycomboBox.Text;
                    //bool b=true;
                    ListViewItem myView = new ListViewItem(infoList[0]);
                    if (infoList[1].ToLower().Contains(gainword.ToLower()))
                    {
                        //showalllistView.Items.Add(aStudentDataRead[0]);
                        for (int i = 1; i < 3; i++)
                        {
                            myView.SubItems.Add(infoList[i]);
                        }
                        infolistView.Items.Add(myView);
                        salary       = Convert.ToDouble(infoList[0]);
                        totalAmount += salary;
                    }
                    total_amounttextBox.Text = totalAmount.ToString();
                }
                else if (view_categorycomboBox.Text == "Conveyance")
                {
                    string search   = infoList[0];
                    string gainword = view_categorycomboBox.Text;
                    //bool b=true;
                    ListViewItem myView = new ListViewItem(infoList[0]);
                    if (infoList[1].ToLower().Contains(gainword.ToLower()))
                    {
                        //showalllistView.Items.Add(aStudentDataRead[0]);
                        for (int i = 1; i < 3; i++)
                        {
                            myView.SubItems.Add(infoList[i]);
                        }
                        infolistView.Items.Add(myView);
                        salary       = Convert.ToDouble(infoList[0]);
                        totalAmount += salary;
                    }
                    total_amounttextBox.Text = totalAmount.ToString();
                }
                else if (view_categorycomboBox.Text == "Grocery")
                {
                    string search   = infoList[0];
                    string gainword = view_categorycomboBox.Text;
                    //bool b=true;
                    ListViewItem myView = new ListViewItem(infoList[0]);
                    if (infoList[1].ToLower().Contains(gainword.ToLower()))
                    {
                        //showalllistView.Items.Add(aStudentDataRead[0]);
                        for (int i = 1; i < 3; i++)
                        {
                            myView.SubItems.Add(infoList[i]);
                        }
                        infolistView.Items.Add(myView);
                        salary       = Convert.ToDouble(infoList[0]);
                        totalAmount += salary;
                    }
                    total_amounttextBox.Text = totalAmount.ToString();
                }
                else if (view_categorycomboBox.Text == "Misc")
                {
                    string search   = infoList[0];
                    string gainword = view_categorycomboBox.Text;
                    //bool b=true;
                    ListViewItem myView = new ListViewItem(infoList[0]);
                    if (infoList[1].ToLower().Contains(gainword.ToLower()))
                    {
                        //showalllistView.Items.Add(aStudentDataRead[0]);
                        for (int i = 1; i < 3; i++)
                        {
                            myView.SubItems.Add(infoList[i]);
                        }
                        infolistView.Items.Add(myView);
                        salary       = Convert.ToDouble(infoList[0]);
                        totalAmount += salary;
                    }
                    total_amounttextBox.Text = totalAmount.ToString();
                }
            }

            aStream.Close();
        }
Пример #29
0
        public static void Rearange(string path)
        {
            Dictionary <string, Dictionary <string, List <string> > > csvContent = new Dictionary <string, Dictionary <string, List <string> > >();

            CsvFileReader csvFileReader = new CsvFileReader(path);
            CsvRow        row           = new CsvRow();

            csvFileReader.ReadRow(row);
            while (csvFileReader.ReadRow(row))
            {
                if (!csvContent.ContainsKey(row[0]))
                {
                    csvContent[row[0]] = new Dictionary <string, List <string> >();
                }
                if (!csvContent[row[0]].ContainsKey(row[1]))
                {
                    csvContent[row[0]][row[1]] = new List <string>();
                }
                if (csvContent[row[0]][row[1]].Count == 0)
                {
                    csvContent[row[0]][row[1]].Add("");
                }
                if (csvContent[row[0]][row[1]].Count == 1)
                {
                    csvContent[row[0]][row[1]].Add("");
                }
                csvContent[row[0]][row[1]][0] += row[2] + "|";
                if (row.Count == 4)
                {
                    csvContent[row[0]][row[1]][1] += row[3];
                }
            }
            csvFileReader.Close();

            File.WriteAllText(path, "Date,Task,Duration,Comments\n");

            TextWriter csvFileWriter = new StreamWriter(File.Open(path, FileMode.Append));

            foreach (var date in csvContent)
            {
                foreach (var task in date.Value)
                {
                    DateTime time = new DateTime(0);
                    foreach (var d in task.Value[0].Split('|'))
                    {
                        if (d == "")
                        {
                            continue;
                        }

                        time = time.AddHours(int.Parse(d.Split(':')[0]));
                        time = time.AddMinutes(int.Parse(d.Split(':')[1]));
                        time = time.AddSeconds(int.Parse(d.Split(':')[2]));
                    }
                    if (task.Value[1].Contains(','))
                    {
                        task.Value[1] = "\"" + task.Value[1] + "\"";
                    }
                    csvFileWriter.WriteLine(date.Key + "," + task.Key + "," + time.ToString("HH:mm:ss") + "," + task.Value[1]);
                }
            }
            csvFileWriter.Close();
        }
Пример #30
0
        //Method to Load SNP for City Photos
        private void createSNPFromcsvToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (checkSwitchStatus())
            {
                Picture.Text = "";
                listBox1.Items.Clear();
                listBox1.SelectionMode = SelectionMode.None;
                programRunning = "City Photos";
                this.Text = programRunning;
                error = false;
                this.Controls.Remove(b);
                this.Controls.Remove(c);
                this.Controls.Remove(t);
                this.Controls.Remove(band);
                this.Controls.Remove(chorus);
                this.Controls.Remove(talent);
                this.Controls.Remove(activities);
                this.Size = new Size(282, 326);
                Picture.Text = "";
                listBox1.Items.Clear();
                Picture.Focus();
                staters.Clear();
                string pathstring = loadStaterList();
                CsvFileReader csv = new CsvFileReader(pathstring);
                char[] _separators = new char[] { '\n', '"', ',' };
                CsvRow row = new CsvRow();
                bool entering = true;
                while (entering == true)
                {
                    entering = csv.ReadRow(row);
                    if (row.Count != 5)
                    {
                        label1.Size = new Size(200, 30);
                        label1.Location = new Point(73, 24);
                        label1.Text = pathstring + " invalid format;\nCorrect Format: First Name, Last Name, Barcode";
                        error = true;

                    }
                    staters.Add(new Stater(row[1], row[2]));
                    char[] bar = row[0].ToCharArray();
                    string bs = Convert.ToString(bar[0]) + Convert.ToString(bar[1]) + Convert.ToString(bar[2]) + Convert.ToString(bar[3]);
                    staters[staters.Count - 1].Barcode = Convert.ToInt32(bs);
                    staters[staters.Count - 1].City = row[3];
                    if (staters.Count() > 1 && staters[staters.Count - 1].Barcode == staters[staters.Count - 2].Barcode)
                    {
                        staters.RemoveAt(staters.Count - 1);
                        break;
                    }
                }
                csv.Close();
                rows();
                SNPhasBeenLoaded = true;
                //checkStaterList();
                if (error == false)
                {
                    label1.Size = new Size(130, 30);
                    label1.Location = new Point(73, 24);
                    label1.Text = "Stater list successfully loaded.";

                    Picture.Enabled = true;
                    button1.Enabled = true;
                    Picture.Focus();
                }
                else
                {
                    label1.Size = new Size(130, 30);
                    label1.Location = new Point(73, 24);
                    label1.Text = "The stater list contains an error";
                }
            }
        }
        protected string DoImportContacts(ContactImportOptions options)
        {
            Assert.ArgumentNotNull(options, "options");
            var contactManager            = Factory.CreateObject("tracking/contactManager", true) as ContactManager;
            var contactRepository         = Factory.CreateObject("tracking/contactRepository", true) as ContactRepository;
            var numOfImported             = 0;
            var numOfContactExists        = 0;
            var numOfBadContacts          = 0;
            var numOfContactsAddedToState = 0;

            using (var csvFileReader = new CsvFileReader(options.FileName))
            {
                try
                {
                    var columnNameFields       = csvFileReader.ReadLine();
                    var contactIdentifierIndex =
                        columnNameFields.FindIndex(h => string.Equals(options.ContactIdentifierField, h));
                    if (contactIdentifierIndex < 0)
                    {
                        return(string.Empty);
                    }

                    var contactFirstNameIndex =
                        columnNameFields.FindIndex(x => string.Equals(options.ContactFirstNameField, x));
                    var contactLastNameIndex =
                        columnNameFields.FindIndex(x => string.Equals(options.ContactLastNameField, x));
                    var contactEmailIndex = columnNameFields.FindIndex(x => string.Equals(options.ContactEmailField, x));

                    var valueFields = csvFileReader.ReadLine();
                    while (valueFields != null)
                    {
                        var contactIdentifier = valueFields[contactIdentifierIndex];
                        if (string.IsNullOrWhiteSpace(contactIdentifier))
                        {
                            numOfBadContacts++;
                        }
                        else
                        {
                            var leaseOwner = new LeaseOwner("AddContacts-" + Guid.NewGuid(),
                                                            LeaseOwnerType.OutOfRequestWorker);
                            LockAttemptResult <Contact> lockAttemptResult;
                            var contact = contactManager.LoadContactReadOnly(contactIdentifier);
                            if (contact != null)
                            {
                                numOfContactExists++;
                                lockAttemptResult = contactRepository.TryLoadContact(contact.ContactId, leaseOwner,
                                                                                     TimeSpan.FromSeconds(3));
                                if (lockAttemptResult.Status == LockAttemptStatus.Success)
                                {
                                    contact = lockAttemptResult.Object;
                                    contact.ContactSaveMode = ContactSaveMode.AlwaysSave;
                                }
                                else
                                {
                                    Log.Error("Cannot lock contact! " + lockAttemptResult.Status, this);
                                }
                            }
                            else
                            {
                                contact = contactRepository.CreateContact(ID.NewID);
                                contact.Identifiers.Identifier = contactIdentifier;
                                contact.System.Value           = 0;
                                contact.System.VisitCount      = 0;
                                contact.ContactSaveMode        = ContactSaveMode.AlwaysSave;
                                lockAttemptResult = new LockAttemptResult <Contact>(LockAttemptStatus.Success, contact,
                                                                                    leaseOwner);
                            }
                            UpdateContactPersonalInfo(contact, contactFirstNameIndex, valueFields, contactLastNameIndex);
                            UpdateContactEmailAddress(contactEmailIndex, contact, valueFields);

                            if ((lockAttemptResult.Status != LockAttemptStatus.AlreadyLocked) &&
                                (lockAttemptResult.Status != LockAttemptStatus.NotFound))
                            {
                                if (contact.AutomationStates().IsInEngagementPlan(options.PlanId))
                                {
                                    contact.AutomationStates().MoveToEngagementState(options.PlanId, options.StateId);
                                    Log.Info(
                                        string.Format("Move contact: {0} to engagement plan stateId: {1}",
                                                      contact.ContactId, options.StateId), this);
                                }
                                else
                                {
                                    contact.AutomationStates().EnrollInEngagementPlan(options.PlanId, options.StateId);
                                    Log.Info(
                                        string.Format("Enrolled contact: {0} to engagement plan stateId: {1}",
                                                      contact.ContactId, options.StateId), this);
                                }

                                contactRepository.SaveContact(contact, new ContactSaveOptions(true, leaseOwner, null));
                                numOfContactsAddedToState++;
                            }
                            else
                            {
                                Log.Error(
                                    string.Format("Failed to enroll contact: {0} in engagement plan stateId: {1}",
                                                  contact.ContactId, options.StateId), this);
                            }
                            numOfImported++;
                        }

                        valueFields = csvFileReader.ReadLine();
                    }
                }
                catch (Exception ex)
                {
                    Log.Error(ex.Message, ex, this);
                }
            }

            Log.Info(
                string.Format(
                    "Import Contacts Finished: Imported: {0}, Contact Exists: {1}, Bad Contact Data: {2}, Added to State: {3}",
                    numOfImported, numOfContactExists, numOfBadContacts, numOfContactsAddedToState), GetType());
            return(numOfImported + "|" + numOfContactExists + "|" + numOfBadContacts + "|" + "|" +
                   numOfContactsAddedToState + "|");
        }
 public void Setup()
 {
     _fileSystem = new Mock<IFileSystem>();
     _lineReader = new Mock<ICsvLineReader<SettledBet>>();
     _sut = new CsvFileReader<SettledBet>(_fileSystem.Object, _lineReader.Object);
 }
        /// <summary>
        /// Attempts to load the file set in the file path as a CSV file and to send the resulting
        /// data to the parent mode view model.
        /// May be unsuccessful and return false.
        /// </summary>
        public bool TryLoadFile()
        {
            try
            {
                Encoding selectedEncoding;
                try
                {
                    string encodingName = _selectedEncoding;
                    if (string.IsNullOrWhiteSpace(encodingName))
                    {
                        encodingName = "utf-8"; // Default to UTF-8
                    }
                    selectedEncoding = Encoding.GetEncoding(encodingName);
                }
                catch (ArgumentException)
                {
                    ErrorMessage = string.Format("The encoding name \"{0}\" is not supported.", _selectedEncoding);
                    return(false);
                }

                using (CsvFileReader csvReader = new CsvFileReader(_filePath, EmptyLineBehavior.Ignore, selectedEncoding))
                {
                    // Set reading parameters.
                    csvReader.Delimiter = _csvSeparator.First();
                    csvReader.Quote     = _csvQuote.First();

                    CsvImportViewModel parent = (CsvImportViewModel)ParentMode;
                    parent.CsvLines.Clear();
                    List <string> header     = new List <string>();
                    List <string> row        = new List <string>();
                    int           maxColumns = 0;

                    // Read header row if existing.
                    if (_csvHasHeader)
                    {
                        csvReader.ReadRow(header);
                        maxColumns = header.Count;
                    }

                    // Read data rows.
                    while (csvReader.ReadRow(row))
                    {
                        parent.CsvLines.Add(row);
                        maxColumns = Math.Max(row.Count, maxColumns);
                        row        = new List <string>();
                    }

                    // Add missing columns to the header, with generic names.
                    // When there is no header, obviously, all columns are missing.
                    while (header.Count < maxColumns)
                    {
                        header.Add(string.Format("[Column {0}]", header.Count + 1));
                    }
                    parent.CsvColumns = header;
                }
            }
            catch (Exception ex)
            {
                // On exception, prevent going any further in the import process, display an error, and log it.
                ErrorMessage = string.Format("An unknown error occured while reading the CSV file:{0}{1}", Environment.NewLine, ex.Message);
                LogHelper.GetLogger("CSV Import").ErrorFormat("Error while reading CSV: {1}", ex.Message);
                return(false);
            }

            // No columns?
            if (!((CsvImportViewModel)ParentMode).CsvColumns.Any())
            {
                ErrorMessage = "The file seems to be empty.";
                return(false);
            }

            // Aaand we're done.
            return(true);
        }
        protected void btnUpload_Click(object sender, EventArgs e)
        {
            if (FileUploadPayPak.HasFile)
            {
                string fileExtension = System.IO.Path.GetExtension(FileUploadPayPak.FileName);
                if (fileExtension != ".csv")
                {
                    lblStatus.Text   = "Please Upload A File with CSV extension.";
                    trStatus.Visible = true;
                }
                else
                {
                    try
                    {
                        //Uploaded File Saves on Server.
                        FileUploadPayPak.SaveAs(Server.MapPath("~/App_Data/" + FileUploadPayPak.FileName));

                        //Internal Working

                        //string str = "";
                        string fileName = "";
                        string filename = "";
                        lblStatus.Text = string.Empty;

                        fileName = Path.GetFileName(this.FileUploadPayPak.PostedFile.FileName);
                        fileName = FileUploadPayPak.FileName;
                        filename = base.Server.MapPath("~/App_Data") + "/" + fileName;

                        using (CsvFileReader reader = new CsvFileReader(filename))
                        {
                            int    i   = 0;
                            CsvRow row = new CsvRow();
                            try
                            {
                                int count = row.Count;
                                Debug.WriteLine("Total Rows:" + count);
                                while (reader.ReadRow(row))
                                {
                                    i++;
                                    if (i > 1)
                                    {
                                        int    result  = -1;
                                        string Column1 = Convert.ToString(row[0]);
                                        string Column2 = Convert.ToString(row[1]);
                                        string Column3 = string.Empty;
                                        string Column4 = string.Empty;

                                        try
                                        {
                                            result = cls.InsertFIAMostWantedTerroristsData(Column1, Column2, Column3, Column4);
                                        }
                                        catch (Exception ex)
                                        {
                                            lblStatus.Text = "Operation Failed: " + ex.Message;
                                        }

                                        count++;
                                    }
                                    else
                                    {
                                        //if (row[0] == "FirstName") { }
                                        //else { lblStatus.Text = "File Invalid Format."; Debug.WriteLine("File Invalid Format."); break; }
                                    }
                                }
                            }
                            catch (Exception ex)
                            {
                                lblStatus.Text = "Error : " + ex.Message + ")";
                            }
                            finally
                            {
                                GC.Collect();
                            }
                        }


                        //Internal Working End

                        //Message Appeared when file uploads completely.
                        lblStatus.Text   = "File Uploaded Successfully.";
                        trStatus.Visible = true;
                    }
                    catch (OutOfMemoryException ex)
                    {
                        lblStatus.Text   = "Memory is not enough. Please delete old data and try again." + ex.Message;
                        trStatus.Visible = true;
                    }
                    catch (Exception ex)
                    {
                        lblStatus.Text   = "Exception: " + ex.Message;
                        trStatus.Visible = true;
                    }
                }
            }
            else
            {
                lblStatus.Text   = "Please Upload A File.";
                trStatus.Visible = true;
            }
            this.UpdatePanel1.Update();
        }
Пример #35
0
        private async Task StartParsingAsync()
        {
            using (CsvFileReader csvReader = new CsvFileReader(await csvFile.OpenStreamForReadAsync()))
            {
                CsvRow row       = new CsvRow();
                int    rowNumber = 0;

                while (csvReader.ReadRow(row))
                {
                    if (row[0].ToLower().Contains("parameter"))
                    {
                        for (int i = 1; i < row.Count; i++)
                        {
                            string s = row[i].ToLower();

                            if (s == "exist")
                            {
                                Column_Exist = i;
                            }
                            else if (s.Contains("lefttop") && s.Contains("x"))
                            {
                                Column_LeftTopX = i;
                            }
                            else if (s.Contains("lefttop") && s.Contains("y"))
                            {
                                Column_LeftTopY = i;
                            }
                            else if (s.Contains("rightbottom") && s.Contains("x"))
                            {
                                Column_RightBottomX = i;
                            }
                            else if (s.Contains("rightbottom") && s.Contains("y"))
                            {
                                Column_RightBottomY = i;
                            }
                            else if (s.Contains("index") && s.Contains("z"))
                            {
                                Column_Zindex = i;
                            }
                            else if (s == "png")
                            {
                                Column_PNG = i;
                            }
                        }

                        AppendRowStartIndex    = rowNumber;
                        AppendColumnStartIndex = row.Count;
                    }
                    else
                    {
                        string row_0 = row[0].ToLower();

                        if (row_0.Contains("led"))
                        {
                            row_0 = row_0.Replace("led", "").Replace(" ", "");

                            if (row[Column_Exist] == "1")
                            {
                                originOrderedIndexes.Add(Int32.Parse(row_0));
                            }
                        }
                    }

                    DataRows.Add(row);
                    row = new CsvRow();
                    rowNumber++;
                }
            }

            Column_LeftTopX     = Column_LeftTopX == -1 ? AppendColumnStartIndex++ : Column_LeftTopX;
            Column_LeftTopY     = Column_LeftTopY == -1 ? AppendColumnStartIndex++ : Column_LeftTopY;
            Column_RightBottomX = Column_RightBottomX == -1 ? AppendColumnStartIndex++ : Column_RightBottomX;
            Column_RightBottomY = Column_RightBottomY == -1 ? AppendColumnStartIndex++ : Column_RightBottomY;
            Column_PNG          = Column_PNG == -1 ? AppendColumnStartIndex++ : Column_PNG;
            Column_Zindex       = Column_Zindex == -1 ? AppendColumnStartIndex++ : Column_Zindex;

            // Align all rows data to rightmost column
            for (int i = 0; i < DataRows.Count; i++)
            {
                for (int j = DataRows[i].Count; j < AppendColumnStartIndex; j++)
                {
                    DataRows[i].Add("");
                }
            }

            DataRows[AppendRowStartIndex][Column_LeftTopX]     = "LeftTop_x";
            DataRows[AppendRowStartIndex][Column_LeftTopY]     = "LeftTop_y";
            DataRows[AppendRowStartIndex][Column_RightBottomX] = "RightBottom_x";
            DataRows[AppendRowStartIndex][Column_RightBottomY] = "RightBottom_y";
            DataRows[AppendRowStartIndex][Column_PNG]          = "PNG";
            DataRows[AppendRowStartIndex][Column_Zindex]       = "Z_index";
        }
Пример #36
0
        private static void LoadGeoRoutes()
        {
            Dictionary<string, LinkedList<Waypoint>> routes = new Dictionary<string, LinkedList<Waypoint>>();
            using (CsvFileReader reader = new CsvFileReader(routes_Filename))
            {
                CsvRow row = new CsvRow();
                while (reader.ReadRow(row, ','))
                {
                    string routeID = row[0];
                    Waypoint waypoint = new Waypoint(Convert.ToDouble(row[1]), Convert.ToDouble(row[2]), TimeSpan.Parse(row[3]), Convert.ToDouble(row[4]), row[5]);
                    // Scenario #1
                    if (!routes.ContainsKey(routeID))
                        routes[routeID] = new LinkedList<Waypoint>();
                    routes[routeID].AddLast(waypoint);

                }
            }
            foreach (LinkedList<Waypoint> w in routes.Values)
            {
                Route r = new Route(w.ToArray());
                string key = Route.GetKey(r.start, r.end);
                MapTools.routes.Add(key, r);
            }
        }
Пример #37
0
        private void button1_Click(object sender, EventArgs e)
        {
            if (data == null)
            {
                MessageBox.Show("Open a csv file first."); return;
            }
            if (selectedColumn == "")
            {
                MessageBox.Show("Select a text column."); return;
            }
            // DirectoryInfo dir = new DirectoryInfo(this.openFileDialog1.FileName);
            if (!this.folderBrowserDialog1.ShowDialog().Equals(DialogResult.OK))
            {
                return;
            }
            string dirname = this.folderBrowserDialog1.SelectedPath + "\\CSV2Texts";

            if (Directory.Exists(dirname))
            {
                MessageBox.Show("Converted texts found at: " + dirname); return;
            }
            int lineCount = 0;

            using (StreamReader sr = new StreamReader(this.openFileDialog1.FileName))
            {
                while (sr.Peek() > -1)
                {
                    sr.ReadLine();
                    lineCount++;
                }
                sr.Close();
            }
            int digits = 1;

            while (lineCount > 9)
            {
                digits++;
                lineCount /= 10;
            }
            DirectoryInfo saveDir = Directory.CreateDirectory(dirname);

            using (CsvFileReader cr = new CsvFileReader(this.openFileDialog1.FileName))
            {
                CsvRow header = new CsvRow();
                if (!cr.ReadRow(header))
                {
                    return;
                }
                int headIndex = -1;
                for (int i = 0; i < header.Count; i++)
                {
                    if (header[i] == selectedColumn)
                    {
                        headIndex = i;
                    }
                }
                if (headIndex < 0)
                {
                    MessageBox.Show("Selected text column not found."); cr.Close(); return;
                }
                int count = 1;
                this.button1.Enabled = false;
                while (true)
                {
                    CsvRow row = new CsvRow();
                    if (!cr.ReadRow(row))
                    {
                        break;
                    }
                    string text = row[headIndex];
                    string s    = count.ToString();
                    while (s.Length < digits)
                    {
                        s = "0" + s;
                    }
                    string filename = dirname + "\\" + s + ".txt";
                    using (StreamWriter sw = new StreamWriter(filename))
                    {
                        sw.Write(text);
                        sw.Close();
                    }
                    count++;
                }
                MessageBox.Show((count - 1) + "files converted. Saved in " + dirname);
                cr.Close();
            }
        }
Пример #38
0
        void LoadYesterdayLongRemains()
        {
            try
            {
                const string kRemainsFolder = @"remains\";
                string fileName = String.Format("{0}_remains.csv", _yesterday.ToString("yyyy_MM_dd"));
                string remains_path = String.Format("{0}{1}{2}", kFolder, kRemainsFolder, fileName);

                logger.Info("{0} 읽기 시도", remains_path);

                CsvFileReader reader = new CsvFileReader(remains_path);

                Boolean header = true;
                while (true)
                {
                    CsvRow row = new CsvRow();
                    if (reader.ReadRow(row))
                    {
                        if (header)
                        {
                            header = false;
                            continue;
                        }

                        DateTime dt = DateTime.ParseExact(row[0], "yyyy-MM-dd", null);
                        long count = Convert.ToInt64(TextUtil.RemoveComma(row[1]));
                        double rate = Math.Round(Convert.ToDouble(row[2]), 5);
                        int price = Convert.ToInt32(TextUtil.RemoveComma(row[3]));
                        long notional = Convert.ToInt64(TextUtil.RemoveComma(row[4]));

                        KtbSpotPosition pos = new KtbSpotPosition();
                        pos.TradingDate = dt;
                        pos.Long_2_Short_1 = 2;
                        pos.Count = count;
                        pos.Rate = rate;
                        pos.Price = price;
                        pos.Notional = notional;

                        this.Longs.Add(pos);
                    }
                    else
                    {
                        break;
                    }
                }
                reader.Close();

                logger.Info("Yesterday Long Remain Position Load complete.");
            }
            catch (System.Exception ex)
            {
                logger.Error(ex.ToString());
            }
        }
Пример #39
0
        private void buttonSave_Click(object sender, EventArgs e)
        {
            FileStream    aFileStream = new FileStream(fileLocation, FileMode.OpenOrCreate);
            CsvFileReader aReader     = new CsvFileReader(aFileStream);
            List <string> aRecord     = new List <string>();

            name     = nameTextBox.Text;
            email    = emailTextBox.Text;
            pcontact = pcontactTextBox.Text;
            hcontact = hcontactTextBox.Text;
            address  = addressTextBox.Text;

            while (aReader.ReadRow(aRecord))
            {
                string fileEmail    = aRecord[1];
                string filepContact = aRecord[2];
                string filehContact = aRecord[3];

                if (email == fileEmail)
                {
                    MessageBox.Show(fileEmail + " " + "Already Existed");

                    aFileStream.Close();

                    return;
                }

                if (pcontact == filepContact)
                {
                    MessageBox.Show(filepContact + " " + "Already Existed");

                    aFileStream.Close();

                    return;
                }

                if (hcontact == filehContact)
                {
                    MessageBox.Show(filehContact + " " + "Already Existed");

                    aFileStream.Close();

                    return;
                }
            }

            aFileStream.Close();

            nameTextBox.Text     = "";
            emailTextBox.Text    = "";
            pcontactTextBox.Text = "";
            hcontactTextBox.Text = "";
            addressTextBox.Text  = "";

            FileStream    aNewStream  = new FileStream(fileLocation, FileMode.Append);
            CsvFileWriter aWriter     = new CsvFileWriter(aNewStream);
            List <string> contactInfo = new List <string>();

            contactInfo.Add(name);
            contactInfo.Add(email);
            contactInfo.Add(pcontact);
            contactInfo.Add(hcontact);
            contactInfo.Add(address);

            aWriter.WriteRow(contactInfo);

            aNewStream.Close();
        }
Пример #40
0
        //Upload the stater list into the program.
        private void createStaterObjects()
        {
            staters.Clear();
            string pathstring = loadStaterList();
            CsvFileReader csv = new CsvFileReader(pathstring);
            char[] _separators = new char[] { '\n', '"', ',' };
            CsvRow row = new CsvRow();
            bool entering = true;
            while (entering == true)
            {
                entering = csv.ReadRow(row);
                if (row.Count != 5)
                {
                    label1.Size = new Size(200, 30);
                    label1.Location = new Point(50, 20);
                    label1.Text = pathstring + " invalid format;\nCorrect Format: First Name, Last Name, Barcode";
                    error = true;

                }
                staters.Add(new Stater(row[1], row[2]));
                char[] bar = row[0].ToCharArray();
                string bs = Convert.ToString(bar[0]) + Convert.ToString(bar[1]) + Convert.ToString(bar[2]) + Convert.ToString(bar[3]);
                staters[staters.Count - 1].Barcode = Convert.ToInt32(bs);
                staters[staters.Count - 1].City = row[3];
                staters[staters.Count - 1].County = row[4];
                if (staters.Count() > 1 && staters[staters.Count - 1].Barcode == staters[staters.Count - 2].Barcode)
                {
                    staters.RemoveAt(staters.Count - 1);
                    break;
                }
            }
            csv.Close();
            SNPhasBeenLoaded = true;
        }
Пример #41
0
        /************************************************************************************/
        protected void ReadINISettings()
        {
            IniFile NewFile = new IniFile(s_strCurrentINIFilePath);

            TransferINISettings(NewFile);

            if (File.Exists(s_strSharedOverridesINIFilePath))
            {
                IniFile OverridesFile = new IniFile(s_strSharedOverridesINIFilePath);
                TransferINISettings(OverridesFile);
            }

            ApplySettings();

            /// Load the custom tell trigger list.
            try
            {
                m_aCustomChatTriggerList.Clear();
                string strInputFile = Path.Combine(Program.ConfigurationFolderPath, m_strCustomTellTriggerFile);

                if (!File.Exists(strInputFile))
                {
                    File.WriteAllText(strInputFile, Resources.CustomTriggersTextFile, Encoding.UTF8);
                }

                using (CsvFileReader ThisReader = new CsvFileReader(strInputFile))
                {
                    SetCollection <string> CommandingPlayerSet = new SetCollection <string>();
                    CommandingPlayerSet.Add(m_astrCommandingPlayers);

                    while (ThisReader.ReadLine())
                    {
                        CustomChatTrigger NewTrigger = new CustomChatTrigger();

                        string strSourcePlayers = ThisReader.ReadNextValue().ToLower();
                        NewTrigger.m_strSubstring = ThisReader.ReadNextValue().Trim().ToLower();

                        /// An exclamation point means all configured commanding players.
                        if (strSourcePlayers == "!")
                        {
                            NewTrigger.m_SourcePlayerSet = CommandingPlayerSet;
                        }
                        else
                        {
                            NewTrigger.m_SourcePlayerSet.Add(strSourcePlayers.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries));
                        }

                        /// Keep reading commands until there are no more.
                        try
                        {
                            while (true)
                            {
                                NewTrigger.m_astrCommands.Add(ThisReader.ReadNextValue());
                            }
                        }
                        catch (IndexOutOfRangeException)
                        {
                            /// This exception is harmless and expected (though cheesy).
                        }

                        if (!string.IsNullOrEmpty(NewTrigger.m_strSubstring) && (NewTrigger.m_astrCommands.Count > 0))
                        {
                            m_aCustomChatTriggerList.Add(NewTrigger);
                            Program.DebugLog("Chat Trigger Sources: \"{0}\", Substring: \"{1}\", Commands: \"{2}\"",
                                             NewTrigger.m_SourcePlayerSet,
                                             NewTrigger.m_strSubstring,
                                             string.Join("\", \"", NewTrigger.m_astrCommands.ToArray()));
                        }
                    }
                }

                Program.DebugLog("{0} custom chat trigger(s) loaded.", m_aCustomChatTriggerList.Count);
                Program.s_EmailQueueThread.PostNewProfileMessage(m_EmailProfile);
            }
            catch
            {
                Program.Log("Generic exception while parsing custom tell trigger file. List will be cleared and unused.");
                m_aCustomChatTriggerList.Clear();
            }

            /// Load the custom regen item list.
            try
            {
                m_aCustomRegenItemList.Clear();
                string strInputFile = Path.Combine(Program.ConfigurationFolderPath, m_strCustomRegenItemFile);

                if (!File.Exists(strInputFile))
                {
                    File.WriteAllText(strInputFile, Resources.CustomRegenItemsTextFile, Encoding.UTF8);
                }

                using (CsvFileReader ThisReader = new CsvFileReader(strInputFile))
                {
                    while (ThisReader.ReadLine())
                    {
                        CustomRegenItem NewItem = new CustomRegenItem();
                        NewItem.m_strName                     = ThisReader.ReadNextValue();
                        NewItem.m_bMustBeEquipped             = bool.Parse(ThisReader.ReadNextValue());
                        NewItem.m_bMustNotBeEquipped          = bool.Parse(ThisReader.ReadNextValue());
                        NewItem.m_bMustTargetEnemy            = bool.Parse(ThisReader.ReadNextValue());
                        NewItem.m_bMustTargetFriend           = bool.Parse(ThisReader.ReadNextValue());
                        NewItem.m_fMinimumHealthRatioRequired = double.Parse(ThisReader.ReadNextValue());
                        NewItem.m_fMaximumHealthRatioRequired = double.Parse(ThisReader.ReadNextValue());
                        NewItem.m_fMinimumPowerRatioRequired  = double.Parse(ThisReader.ReadNextValue());
                        NewItem.m_fMaximumPowerRatioRequired  = double.Parse(ThisReader.ReadNextValue());

                        if (NewItem.IsValid())
                        {
                            m_aCustomRegenItemList.Add(NewItem);
                        }
                    }
                }

                Program.DebugLog("{0} custom regen item(s) loaded.", m_aCustomRegenItemList.Count);
            }
            catch
            {
                Program.Log("Generic exception while parsing custom regen item file. List will be cleared and unused.");
                m_aCustomChatTriggerList.Clear();
            }

            return;
        }
Пример #42
0
        private void searchButton_Click(object sender, EventArgs e)
        {
            string name         = nameTextBox.Text.ToLower();
            string searchByName = SearchTextBox.Text.ToLower();

            FileStream    aFileStream    = new FileStream(filePath, FileMode.Open);
            CsvFileReader aCsvFileReader = new CsvFileReader(aFileStream);
            List <string> aContactBook   = new List <string>();

            showAllListView.Items.Clear();
            if (NameRadioButton.Checked)
            {
                while (aCsvFileReader.ReadRow(aContactBook))
                {
                    string personName = aContactBook[0].ToLower();
                    int    i          = personName.IndexOf(searchByName);
                    if (i == -1)
                    {
                        continue;
                    }
                    else
                    {
                        showAllListView.Items.Add(personName);
                    }
                }
                aFileStream.Close();
            }
            if (numberRadioButton.Checked)
            {
                while (aCsvFileReader.ReadRow(aContactBook))
                {
                    string personNumber = aContactBook[1];
                    //if (studentRegNo.Contains(searchByName))
                    //{
                    //    showAllListView.Items.Add(studentRegNo);
                    //}
                    int i = personNumber.IndexOf(searchByName);
                    if (i == -1)
                    {
                        continue;
                    }
                    else
                    {
                        showAllListView.Items.Add(personNumber);
                    }
                }
                aFileStream.Close();
            }
            if (EmailRadioButton.Checked)
            {
                while (aCsvFileReader.ReadRow(aContactBook))
                {
                    string personEmail = aContactBook[2];
                    int    i           = personEmail.IndexOf(searchByName);
                    if (i == -1)
                    {
                        continue;
                    }
                    else
                    {
                        showAllListView.Items.Add(personEmail);
                    }
                }
                aFileStream.Close();
            }
        }
Пример #43
0
        private void categoryShowButton_Click(object sender, EventArgs e)
        {
            if (File.Exists(fileLocation))
            {
                showListBox.Items.Clear();
                long          categorytotal = 0;
                FileStream    aStream       = new FileStream(fileLocation, FileMode.Open);
                CsvFileReader aReader       = new CsvFileReader(aStream);
                List <string> infoList      = new List <string>();

                if (categoryComboBox2.Text == "House Rent")
                {
                    while (aReader.ReadRow(infoList))
                    {
                        if (infoList[1] == categoryComboBox2.Text)
                        {
                            showListBox.Items.Add(infoList[0] + "  " + infoList[2]);
                            categorytotal += long.Parse(infoList[0]);
                        }
                    }
                }
                if (categoryComboBox2.Text == "Utility Bill")
                {
                    while (aReader.ReadRow(infoList))
                    {
                        if (infoList[1] == categoryComboBox2.Text)
                        {
                            showListBox.Items.Add(infoList[0] + "  " + infoList[2]);
                            categorytotal += long.Parse(infoList[0]);
                        }
                    }
                }
                if (categoryComboBox2.Text == "Conveyance")
                {
                    while (aReader.ReadRow(infoList))
                    {
                        if (infoList[1] == categoryComboBox2.Text)
                        {
                            showListBox.Items.Add(infoList[0] + "  " + infoList[2]);
                            categorytotal += long.Parse(infoList[0]);
                        }
                    }
                }
                if (categoryComboBox2.Text == "Grocery")
                {
                    while (aReader.ReadRow(infoList))
                    {
                        if (infoList[1] == categoryComboBox2.Text)
                        {
                            showListBox.Items.Add(infoList[0] + "  " + infoList[2]);
                            categorytotal += long.Parse(infoList[0]);
                        }
                    }
                }
                if (categoryComboBox2.Text == "Misc")
                {
                    while (aReader.ReadRow(infoList))
                    {
                        if (infoList[1] == categoryComboBox2.Text)
                        {
                            showListBox.Items.Add(infoList[0] + "  " + infoList[2]);
                            categorytotal += long.Parse(infoList[0]);
                        }
                    }
                }

                totalCatTextBox.Text = categorytotal.ToString();
                aStream.Close();
            }
            else
            {
                MessageBox.Show("No entry exists");
            }
        }