none
Cargar archivo. RRS feed

  • Pregunta

  • Hola:

    Tengo un Form que cargo el archivo así:

    byte[] archivo = File.ReadAllBytes(textBox_Ubicacion_archivo.Text);

    A partir de 2 MB adelante tarda mucho en cargarse. Si cargo 75 MB el programa o Windows Form se queda colgado que dice No responde y se queda ahí para siempre, da igual que pase 8 horas, de ahí no sale.

    ¿Hay alguna manera que esto no pase?

    Hay programas que te cargan 600 MB y no tarda tanto tiempo. Sobre todo editor hexadecimales.

    Saludos.


    http://electronica-pic.blogspot.com

    sábado, 26 de agosto de 2017 21:02

Respuestas

  • Hola.

     Podrías probar con la clase StreamReader mas o menos de esta forma:

    using (StreamReader sr = File.OpenText(pathFile))
    {
        string s = String.Empty;
        while ((s = sr.ReadLine()) != null)
        {
            //has algo con la linea
        }
    }

    Te dejo un ejemplo con un arreglo:

    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace ConsoleApplication2
    {
        class Program
        {
            static void Main(string[] args)
            {
                var list = new List<string>();
                using (StreamReader sr = File.OpenText(@"D:\Nuevo documento de texto.txt"))
                {
                    
                    string s = String.Empty;
                    while ((s = sr.ReadLine()) != null)
                    {
                        Console.WriteLine(s.ToString());
                        list.Add(s);
                    }
                }
    
                //Si es necesario el array entonces conviertes la lista en uno
                string[] result = list.ToArray();
            }
        }
    }
    Espero te sea de utilidad



    Saludos desde Monterrey, Nuevo León, México!!!


    • Editado JoséLuisGarcía sábado, 26 de agosto de 2017 22:24
    • Marcado como respuesta Metaconta sábado, 26 de agosto de 2017 23:20
    sábado, 26 de agosto de 2017 22:13