ASP.NET - crear objetos a partir de un archivo de texto

   
Vista:

crear objetos a partir de un archivo de texto

Publicado por fernando fernandomilans.1996@hotmail.com (19 intervenciones) el 14/10/2017 00:51:20
Hola en un archivo de texto traigo objetos Proveedor:
PROPERTIES
1
2
3
4
5
public string rut { get; set; }
public string NombreFantasia { get; set; }
public string Email { get; set; }
public string Tel { get; set; }
public List<ofreceServicio> servicios { get; set; } = new List<ofreceServicio>();


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public static void leerArchivo(string ruta)
{
 
    FileStream fs = new FileStream(ruta, FileMode.Open);
    StreamReader str = new StreamReader(fs);
    string linea = "";
 
    while ((linea = str.ReadLine()) != null)
    {
        string[] datos = linea.Split(':');
        //   string remplazado = linea.Replace("#", ""); //recorro toda la linea para eliminar #
 
    }
    str.Close();
 
}

Este es el metodo donde traigo todo, un ejemplo de una linea de datos = linea.Split(':'); es:

rut1#nombreFantasia1#email@hotmail.com#123456s1

Lo que no se es como crear el objeto de proveedor a partir de:
rut1#nombreFantasia1#email@hotmail.com#123456s1

Estaba pensando quitar los # con esto: // string remplazado = linea.Replace("#", ""); //recorro toda la linea para eliminar #

pero creo que esta mal.
Saludos!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

crear objetos a partir de un archivo de texto

Publicado por Agustín (2 intervenciones) el 29/12/2017 00:48:07
Es más recomendable en este caso, trabajar con una B ase de Datos. Se me ocurre que podés intentar poniendo los datos por fila, en vez de en una sola linea.

Hoy en día estás grabando los datos de esta forma: rut1#nombreFantasia1#email@hotmail.com#123456s1

Lo que digo es que podrias intentar guardarlos de esta otra forma
rut1
nombreFantasia1
email@hotmail.com
123456s1

De esta manera, al leer, agarras los datos por renglon. Como ya sabes que son cuatro los datos, suponiendo que los cuatros datos son obligatorios (siempre van a estar), no vas a tener problema. Lo podrías solucionar con un For que lea por linea y guarde cada una en un campo, por ejemplo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Revisar política de publicidad