Пример #1
0
        void watcher_FileChanged(object sender, FileSystemEventArgs e)
        {
            Console.WriteLine("UN ARCHIVO CAMBIADO {0}", e.Name);
            Thread.Sleep(Convert.ToInt32(ConfigurationManager.AppSettings["before_parse_sleep"]));
            TicketFile file = new TicketFile();

            file.path = e.Name;
            updatefile(file);
        }
Пример #2
0
 public void updatefile(TicketFile file)
 {
     try
     {
         String       FullName       = ConfigurationManager.AppSettings["watch_path"] + file.path;
         FileStream   fs             = new FileStream(FullName, FileMode.Open, FileAccess.Read, FileShare.None);
         StreamReader sfile          = new StreamReader(fs);
         String       current_record = "";
         while (!sfile.EndOfStream)
         {
             String line = sfile.ReadLine();
             //Console.Write(line);
             if (line[0] == '"')
             {
                 if (line.LastIndexOf('"') > 0)
                 {
                     // registro completo en una linea.
                     current_record = line;
                     process_record(current_record, file.path);
                     current_record = "";
                 }
                 else
                 {
                     current_record += line;
                     current_record += "\n";
                 }
             }
             else
             {
                 if (line.LastIndexOf('"') > 0)
                 {
                     current_record += line;
                     process_record(current_record, file.path);
                     current_record = "";
                 }
                 else
                 {
                     current_record += line;
                     current_record += "\n";
                 }
             }
         }
         fs.Close();
     }
     catch (Exception ex)
     {
         logfile.WriteLine(String.Format("EXCEPTION:UPDATE_FILE:{0}", ex.ToString()));
         throw;
     }
 }
Пример #3
0
 public void reload_dir()
 {
     try
     {
         logfile.WriteLine("RECONOCIENDO DIRECTORIO {0}", ConfigurationManager.AppSettings["watch_path"]);
         DirectoryInfo dir = new DirectoryInfo(ConfigurationManager.AppSettings["watch_path"]);
         foreach (FileInfo f in dir.GetFiles(ConfigurationManager.AppSettings["watch_filter"]))
         {
             TicketFile tkt = new TicketFile();
             tkt.path = f.Name;
             ticket_files.Add(tkt);
             logfile.WriteLine("RECONOCIENDO ARCHIVO {0}", f.Name);
             updatefile(tkt);
         }
     }
     catch (Exception ex)
     {
         logfile.WriteLine(String.Format("EXCEPTION:RELOAD_DIR:{0}", ex.ToString()));
         throw;
     }
 }