public List <User> ExtractUsersFromNamesAndAddresses(string addressFileLocation, string nameFileLocation)
        {
            var addressEngine = new FileHelpers.FileHelperEngine <Address>();

            Address[] addresses  = addressEngine.ReadFile(addressFileLocation);
            var       nameEngine = new FileHelpers.FileHelperEngine <Name>();

            Name[]      names = nameEngine.ReadFile(nameFileLocation);
            List <User> users = new List <User>();

            if (names.Length == addresses.Length)
            {
                for (int i = 0; i < names.Length; i++)
                {
                    users.Add(
                        new User()
                    {
                        FullName = names[i].NameValue,
                        Address  = addresses[i].AddressValue
                    });
                }
            }
            //_writer.WriteAll(users);
            return(users);
        }
        private void ReadFileHeader(string fileName)
        {
            fileEngine = new FileHelpers.FileHelperEngine(typeof(CetipFileHeader));

            CetipFileHeader[] headerContent = fileEngine.ReadFile(fileName, 1) as CetipFileHeader[];

            if (headerContent != null)
            {
                gridHeader.Visible = true;
                gridHeader.DataSource = headerContent;
            }
        }
Ejemplo n.º 3
0
        public void ImportRows()
        {
            FileHelpers.FileHelperEngine engine =
                new FileHelpers.FileHelperEngine(typeof(GitUser));
            GitUser[]       res   = engine.ReadFile(dataLocation) as GitUser[];
            List <IdentRow> users = new List <IdentRow>();

            foreach (GitUser user in res)
            {
                new IdentRow(DSType, user.ident, user.name, user.name, normalizeRole(user.role)).StoreRow();
            }
        }
        /// <summary>
        /// Gets the data from file.
        /// </summary>
        /// <param name="filePath">The file path.</param>
        /// <param name="errorMode">The error mode.</param>
        /// <param name="isFirstLineHeader">if set to <c>true</c> [the file's first line will be considered as a header file].</param>
        /// <returns>Return an object that contains source's data (file) converted to TDestination object with Errors
        /// (business and technical) if any.</returns>
        public IDataOutputResult <TDestination> GetDataFromFile(string filePath, ErrorMode errorMode, bool isFirstLineHeader)
        {
            switch (errorMode)
            {
            case ErrorMode.ThrowException:
                fileEngine.ErrorManager.ErrorMode = FileHelpers.ErrorMode.ThrowException;
                break;

            case ErrorMode.SaveAndContinue:
                fileEngine.ErrorManager.ErrorMode = FileHelpers.ErrorMode.SaveAndContinue;
                break;

            case ErrorMode.IgnoreAndContinue:
                fileEngine.ErrorManager.ErrorMode = FileHelpers.ErrorMode.IgnoreAndContinue;
                break;
            }

            if (isFirstLineHeader)
            {
                fileEngine.Options.IgnoreFirstLines = 1;
            }

            try
            {
                TSource[]            data          = fileEngine.ReadFile(filePath);
                List <IErrorMessage> errors        = fileEngine.ErrorManager.GetFileTechnicalErrors();
                List <TDestination>  convertedData = new List <TDestination>();
                foreach (var item in data)
                {
                    ITransformedResult <TDestination> transformedResult = item.GetTransformed();
                    if (transformedResult.HasError)
                    {
                        errors.Add(transformedResult.ErrorMessage);
                    }
                    if (!transformedResult.IsTechnicalError)
                    {
                        convertedData.Add(transformedResult.ResultData);
                    }
                }

                return(new DataOutputResult <TDestination>(errors, convertedData));
            }
            catch (Exception ex)
            {
                List <IErrorMessage> errorList = new List <IErrorMessage>();
                IErrorMessage        error     = new ErrorMessage(ErrorMessageType.TechnicalMessage);
                errorList.Add(error);
                error.Message = ex.InnerException.IsNotNull() ? ex.InnerException.Message : ex.Message;
                return(new DataOutputResult <TDestination>(errorList, null));
            }
        }
        private void ReadFileContent(string fileName)
        {
            CetipFileRecord[] content = null;
            fileEngine = new FileHelpers.FileHelperEngine(typeof(CetipFileRecord));

            fileEngine.Options.IgnoreFirstLines = 1;
            fileEngine.Options.IgnoreEmptyLines = true;

            content = fileEngine.ReadFile(fileName) as CetipFileRecord[];

            if (content != null)
            {
                gridConteudo.Visible = true;
                gridConteudo.DataSource = content;
            }
        }
Ejemplo n.º 6
0
        /// <summary>
        /// Metodo para leer el archivo y persistirlo en la BD
        /// <remarks>
        /// Este método debería guardar un diferencial diariamente. 
        /// Ahora mismo solo vacia el contenido completo.
        /// </remarks>
        /// </summary>
        public void ImportarArchivo()
        {
            var parseEngine = new FileHelpers.FileHelperEngine<Models.RncMapper>();
            var rncs = parseEngine.ReadFile(Common.RutaArchivoCsv);

            //TODO: Aqui deberiamos usar un método ASYNC para ir enviando mensajes de progreso
            var dbRncList = new List<Models.RNC>();
            for (int i = 0; i < rncs.Length ; i++)
            {
                var item = rncs[i];
                DateTime fecha;
                var dbItem = new Models.RNC
                                 {
                                     NumeroRnc = item.NumeroRnc,
                                     RazonSocial = item.RazonSocial,
                                     NombreComercial = item.NombreComercial,
                                     ActividadPrincipal = item.ActividadPrincipal,
                                     DireccionCalle = item.DireccionCalle,
                                     DireccionNumero = item.DireccionNumero,
                                     DireccionSector = item.DireccionSector,
                                     Telefono = item.Telefono,
                                     RegimenPago = item.RegimenPago,
                                     Estado = item.Estado
                                 };
                if (DateTime.TryParseExact(item.FechaConstitucion, "dd/MM/yyyy",
                    CultureInfo.InvariantCulture, DateTimeStyles.None, out fecha))
                {
                    dbItem.FechaConstitucion = fecha;
                }

                dbRncList.Add(dbItem);
            }

            //TODO: Ahora mismo está todo en un método, hay que separar las tareas de parsing de las de escritura en la BD
            var context = new Database();

            //Prueba con los primeros cinco mil registros
            foreach (var rnc in dbRncList.Take(5000))
            {
                context.ListadoRNCs.Add(rnc);
            }
            context.SaveChanges();
        }
Ejemplo n.º 7
0
        public async Task ExportCsvToMySQL <T>(string myDirPath) where T : class
        {
            using (var db = new TrainsDb_200123Context())
            {
                DirectoryInfo d     = new DirectoryInfo(myDirPath);            //Assuming Test is your Folder
                FileInfo[]    Files = d.GetFiles("*.csv");
                foreach (FileInfo file in Files)
                {
                    FileHelpers.FileHelperEngine <T> engine = new FileHelpers.FileHelperEngine <T>(Encoding.GetEncoding("ISO-8859-1"));
                    engine.HeaderText             = engine.GetFileHeader().Remove(0, 3);
                    engine.ErrorManager.ErrorMode = FileHelpers.ErrorMode.SaveAndContinue;
                    T[] trains = engine.ReadFile(file.FullName);
                    //Array.ForEach(trains, e => e.Id = 0);
                    await db.AddRangeAsync(trains);

                    await db.SaveChangesAsync();

                    /*
                     * int count = 0;
                     * foreach (var train in trains)
                     * {
                     *      count++;
                     *      train.Id = 0;
                     *      db.CzPreosGtn.Add(train);
                     *      db.SaveChanges();
                     * }
                     */
                    if (engine.ErrorManager.HasErrors)
                    {
                        engine.ErrorManager.SaveErrors($"{myDirPath}\\err-{file.Name}.out");
                    }
                    Console.WriteLine($"Importet file: {file.Name}");
                    //Console.WriteLine($"Records: {count}");
                    //ReadFileLineByLine(db, file);
                }

                Console.WriteLine($"finished: {myDirPath}");
                return;
            }
        }
Ejemplo n.º 8
0
        static void Main()
        {
            //Application.EnableVisualStyles();
            //Application.SetCompatibleTextRenderingDefault(false);
            //Application.Run(new Form1());

            Type t = GetClassType(typeof(Tools.Serialization.CSV.Customer), ",");

            //FileHelpers.FileHelperEngine engine = new FileHelpers.FileHelperEngine(typeof(SemicolonCustomer));
            FileHelpers.FileHelperEngine engine = new FileHelpers.FileHelperEngine(t);
            string str = "path/to/datafile";

            Tools.Serialization.CSV.Customer[] custs = (Tools.Serialization.CSV.Customer[])engine.ReadFile(str);
            //Customer[] custs = (Customer[]) engine.ReadFile("yourfile.txt");


            foreach (Tools.Serialization.CSV.Customer cli in custs)
            {
                Console.WriteLine();
                Console.WriteLine("Customer: " + cli.CustId.ToString() + " - " + cli.Name);
                Console.WriteLine("Added Date: " + cli.AddedDate.ToString("d-M-yyyy"));
                Console.WriteLine("Balance: " + cli.Balance.ToString());
                Console.WriteLine();
                Console.WriteLine("-----------------------------");
            }     // Next cli



            Console.WriteLine(Environment.NewLine);
            Console.WriteLine(" --- Press any key to continue --- ");
            Console.ReadKey();
        }
Ejemplo n.º 9
0
        public void Aiports()
        {
            var engine = new FileHelpers.FileHelperEngine<BigDataData.Csv.Airport>();
            var result = engine.ReadFile(@"D:\stuff\datasource\airports.csv");
            try
            {
                foreach (BigDataData.Csv.Airport air in result)
                {
                    context.AddAirport(new BigDataData.Models.Airport
                    {
                        ImportedId = air.AirportId,
                        Altitude = air.Altitude,
                        City = air.City,
                        Country = air.Country,
                        Dst = air.Dst,
                        IataFaa = air.IataFaa,
                        Icao = air.Icao,
                        Latitude = air.Latitude,
                        Longitude = air.Longitude,
                        Name = air.Name,
                        Timezone = air.Timezone,
                        TzDatabaseTimeZone = air.TzDatabaseTimeZone
                    });
                }
            }
            catch (Exception eek)
            {
                Console.WriteLine("Save error: {0}", eek.Message);
            }

            Console.WriteLine("Done");
            Console.ReadKey();
        }
Ejemplo n.º 10
0
 public void Airlines()
 {
     var engine = new FileHelpers.FileHelperEngine<BigDataData.Csv.Airline>();
     var result = engine.ReadFile(@"D:\stuff\datasource\airlines.csv");
     try
     {
         foreach (BigDataData.Csv.Airline air in result)
         {
             context.AddAirline(new BigDataData.Models.Airline
             {
                 ImportedId = air.AirlineId,
                 Name = air.Name,
                 Alias = air.Alias,
                 Iata = air.Iata,
                 Icao = air.Icao,
                 Callsign = air.Callsign,
                 Country = air.Country,
                 Active = air.Active
             });
         }
     }
     catch (Exception eek)
     {
         Console.WriteLine("Save error: {0}", eek.Message);
     }
 }
Ejemplo n.º 11
0
        static void Main()
        {
            //Application.EnableVisualStyles();
            //Application.SetCompatibleTextRenderingDefault(false);
            //Application.Run(new Form1());

            Type t = GetClassType(typeof(Tools.Serialization.CSV.Customer), ",");

            //FileHelpers.FileHelperEngine engine = new FileHelpers.FileHelperEngine(typeof(SemicolonCustomer));
            FileHelpers.FileHelperEngine engine = new FileHelpers.FileHelperEngine(t);

            // To read use:
            string str = @"D:\Stefan.Steiger\Documents\Visual Studio 2010\Projects\MvcExamples\FileHelpers_Examples_CSharp_VbNet\Data\SemicolonCustomers.txt";

            str = @"D:\Stefan.Steiger\Documents\Visual Studio 2010\Projects\MvcExamples\FileHelpers_Examples_CSharp_VbNet\Data\CustomersDelimited.txt";

            //str = @"D:\Stefan.Steiger\Desktop\FileHelpers_Examples_CSharp_VbNet\Data\CustomersDelimited.txt";
            Tools.Serialization.CSV.Customer[] custs = (Tools.Serialization.CSV.Customer[])engine.ReadFile(str);
            //Customer[] custs = (Customer[]) engine.ReadFile("yourfile.txt");


            foreach (Tools.Serialization.CSV.Customer cli in custs)
            {
                Console.WriteLine();
                Console.WriteLine("Customer: " + cli.CustId.ToString() + " - " + cli.Name);
                Console.WriteLine("Added Date: " + cli.AddedDate.ToString("d-M-yyyy"));
                Console.WriteLine("Balance: " + cli.Balance.ToString());
                Console.WriteLine();
                Console.WriteLine("-----------------------------");
            }     // Next cli



            Console.WriteLine(Environment.NewLine);
            Console.WriteLine(" --- Press any key to continue --- ");
            Console.ReadKey();
        }
Ejemplo n.º 12
0
        public static void Main(string[] args)
        {
            var options = new Options();
             CommandLine.ICommandLineParser cmdParser =
               new CommandLine.CommandLineParser(new CommandLine.CommandLineParserSettings(System.Console.Error));

             if (cmdParser.ParseArguments(args, options)) {
            string connectionString = string.Format("URI=file:{0}", options.Database);

            #if (NET)
            var connection = new System.Data.SQLite.SQLiteConnection(connectionString);
            #else
            var connection = new Mono.Data.Sqlite.SqliteConnection(connectionString);
            #endif

            connection.Open();
            var command = connection.CreateCommand();
            command.CommandText =
              "CREATE TABLE IF NOT EXISTS at (id INTEGER PRIMARY KEY  NOT NULL,name VARCHAR,surname VARCHAR,year INTEGER,gender CHAR,time VARCHAR)";
            command.ExecuteNonQuery();
            var repo = new AthleteRepository(command);
            switch (options.Action) {
               case Action.Module: {
                  // 10mm d=> 28pt
                  // 15mm => 42pt
                  //float marginLeft, float marginRight, float marginTop, float marginBottom
                  var document = new iTextSharp.text.Document(iTextSharp.text.PageSize.A4, 10, 10, 36, 36);
                  iTextSharp.text.pdf.PdfWriter.GetInstance(document,
                                                            new System.IO.FileStream("./module.pdf", System.IO.FileMode.Create));
                  document.Open();
                  var builder = new ModuleBuilder(document, options.YearEdition, 10);
                  for (int page = 0; page < 10; page++) {
                     builder.AddPage();
                  }
                  document.Close();
                  break;
               }
               case Action.Insert: {
                  System.Console.WriteLine("Drop all results?[y/N]?");
                  string yes  = System.Console.ReadLine();
                  if (yes == "y") {
                     FileHelpers.FileHelperEngine<Athlete> engine = new FileHelpers.FileHelperEngine<Athlete>();
                     Athlete[] athletes = engine.ReadFile(options.Input);

                     repo.DeleteAll();
                     foreach (var a in athletes) {
                        System.Console.WriteLine(a.Name);
                        repo.Insert(a);
                     }
                  }
                  break;
               }
               case Action.CreateList:
               case Action.CreateResult: {
                  string catFileName = GetCatFileName(options);
                  string reportFileName = GetReportFileName(options);
                  var document = new iTextSharp.text.Document(iTextSharp.text.PageSize.A4, 10, 10, 36, 36);
                  iTextSharp.text.pdf.PdfWriter.GetInstance(document,
                                                            new System.IO.FileStream(reportFileName, System.IO.FileMode.Create));
                  document.Open();
                  IBuilder builder = null;

                  if (options.Action == Action.CreateList) {
                     builder = new ListBuilder(document);
                  } else {
                     builder = new PdfBuilder(document);
                  }

                  Category[] cats = GetCategories(catFileName);
                  foreach (Category cat in cats) {
                     if (log.IsDebugEnabled) log.Debug("parse" + cat.Id);
                     builder.BeginReport(cat.Title, options.YearEdition);
                     var athletes = repo.Query(string.Format (cat.Sql, options.YearEdition));
                     foreach (Athlete athlete in athletes) {
                        builder.Add(athlete);
                     }
                     builder.EndReport();
                  }
                  document.Close();
                  break;
               }
               case Action.Interactive: {
                  Category[] cats = GetCategories(GetCatFileName(options));
                  var parser = new TimeParser();
                  foreach (Category cat in cats) {
                     System.Console.WriteLine("========{0}=========", cat.Id);
                     var athletes = repo.Query(string.Format (cat.Sql, options.YearEdition));
                     foreach (Athlete athlete in athletes) {
                        System.Console.Write("{0:00} {1}\t{2}({3}):", athlete.Id, athlete.Surname, athlete.Name, athlete.Gender);
                        string time = string.Empty;
                        string fmt = string.Empty;
                        do {
                           time = System.Console.ReadLine();
                           fmt = parser.Parse(time);
                           if (!string.IsNullOrEmpty(fmt) ) {
                              System.Console.WriteLine(fmt);
                              repo.UpdateTime(athlete.Id, fmt);
                           } else {
                              if (time != "s") {
                                 System.Console.WriteLine("invalid..");
                              }
                           }
                        } while (string.IsNullOrEmpty(fmt) && time != "s");
                     }
                  }
                  break;
               }
            }
            connection.Close();
             }
        }
Ejemplo n.º 13
0
 private static Category[] GetCategories(string filename)
 {
     FileHelpers.FileHelperEngine<Category> engineCat = new FileHelpers.FileHelperEngine<Category>();
      return engineCat.ReadFile(filename);
 }