Exemplo n.º 1
0
        /**
         *
         *
         *
         */
        public static void cleanFile(string filePath, ref Fallo fallo)
        {
            string   line;
            string   fileText = string.Empty;
            FileInfo f        = new FileInfo(filePath);
            long     fileSize = f.Length;

            // Read the file and display it line by line.
            System.IO.StreamReader file = new System.IO.StreamReader(filePath, Encoding.Default);
            while ((line = file.ReadLine()) != null)
            {
                string text = FirstTestCase.ReplaceHexadecimalSymbols(line.Trim());

                if (text.Trim() == string.Empty)
                {
                    continue;
                }

                //Elimina codigo de barras
                if (text.Trim().Length == 10)
                { //PPNWKXXEXM
                  //CWEJGYQKZH
                    if (text.ToUpper() != text)
                    {
                        fileText += FirstTestCase.finalPoint(line);
                    }
                }

                if (text.Trim().Length == 18)
                {
                    //HXDCDFSXGVXLGCXGBB
                    if (text.ToUpper() != text)
                    {
                        fileText += FirstTestCase.finalPoint(line);
                    }
                }


                //Elimina numero de pagina
                else if (text.Trim().Length < 4)
                {
                    int    numeroPagina = 0;
                    string texto        = text.Trim();
                    if (!int.TryParse(texto, out numeroPagina))
                    {
                        fileText += FirstTestCase.finalPoint(texto);
                    }
                }
                else
                {
                    text      = FirstTestCase.finalPoint(text);
                    text      = FirstTestCase.doblePoint(text);
                    fileText += FirstTestCase.replaceCorreciones(text);
                }
            }

            /**
             * Procesamos las partes
             */
            string[] stringSeparatorsCon = new string[] { " CON " };
            string[] arrPartes           = fallo.partes.Split(stringSeparatorsCon, StringSplitOptions.None);
            string   parteActiva         = string.Empty;
            string   partePasiva         = string.Empty;

            if (arrPartes.Length == 2)
            { //Existen las partes
                parteActiva = arrPartes[0].Trim();
                partePasiva = arrPartes[1].Trim();
            }
            else
            {
                arrPartes = fallo.partes.Split("/".ToCharArray());
                if (arrPartes.Length == 2)
                { //Existen las partes
                    parteActiva = arrPartes[0].Trim();
                    partePasiva = arrPartes[1].Trim();
                }
                else   //CONTRA
                {
                    string[] stringSeparatorsContra = new string[] { " CONTRA " };
                    arrPartes = fallo.partes.Split(stringSeparatorsContra, StringSplitOptions.None);
                    if (arrPartes.Length == 2)
                    { //Existen las partes
                        parteActiva = arrPartes[0].Trim();
                        partePasiva = arrPartes[1].Trim();
                    }
                }
            }

            fallo.parteActiva      = parteActiva;
            fallo.partePasiva      = partePasiva;
            fallo.texto            = fileText.Trim();
            fallo.numeroCaracteres = fileText.Trim().Length;
            file.Close();
        }