Ok, mi código se supone que debería de leer una linea de un archivo .txt, la linea que leyó meterla en una variable, a esa variable aplicarle el .split con el parámetro de '/', y lo resultante guardarlo en un arreglo y posteriormente imprimirlo en una serie de textbox.
se supone que debe leer esto
datos_cliente.txt:
11111/Juan Carlos/Lopez/Perez/gpe. victoria/331/las fuentes/81252/6688131547
private void button6_Click(object sender, EventArgs e)
{
StreamReader rd = new StreamReader("C:\\datos_cliente.txt");
string linea;
bool encontrado = false;
char[] delimitantes = {'/'};
linea = rd.ReadLine();
while (linea != null)
{
delimitantes = new char[] {'/'};
linea = rd.ReadLine();
string[] cadena = linea.Split(delimitantes);
if ( cadena[0] == txt_nocliente.Text)
{
txt_nombre.Text = cadena[1];
txt_appaterno.Text = cadena[2];
txt_apmaterno.Text = cadena[3];
txt_calle.Text = cadena[4];
txt_num.Text = cadena[5];
txt_colonia.Text = cadena[6];
txt_codpostal.Text = cadena[7];
txt_telefono.Text = cadena[8];
encontrado = true;
}
else
{
encontrado= false;
}
}
if (encontrado == false)
{
MessageBox.Show("Cliente no encontrado, verifique el numero porfavor");
}
rd.Close();
}
El problema es que me dice que utilice la clave "new" para crear instancia del objeto justo en la linea de string[] cadena = linea.Split(delimitantes);
Por favor, si alguien se tomase el tiempo de decirme que esta mal se lo agradecería, es un proyecto de la escuela y no ayo el porque del error :s.
Solo me marca ese error, gracias por su tiempo :).
(//)
Dentro de tu codigo elimina esta linea: delimitantes = new char[] {'/'};
esta demas, porque ya declaraste antes. Tendria que andar.
No me funciono amigo :S, pero muchas gracias.
private void button6_Click(object sender, EventArgs e)
{
StreamReader rd = new StreamReader("C:\\datos_cliente.txt");
string linea;
bool encontrado = false;
linea = rd.ReadLine();
while (linea != null)
{
linea = rd.ReadLine();
string[] cadena = linea.Split(new Char [] {'/');
if ( cadena[0] == txt_nocliente.Text)
{
txt_nombre.Text = cadena[1];
txt_appaterno.Text = cadena[2];
txt_apmaterno.Text = cadena[3];
txt_calle.Text = cadena[4];
txt_num.Text = cadena[5];
txt_colonia.Text = cadena[6];
txt_codpostal.Text = cadena[7];
txt_telefono.Text = cadena[8];
encontrado = true;
}
else
{
encontrado= false;
}
}
if (encontrado == false)
{
MessageBox.Show("Cliente no encontrado, verifique el numero porfavor");
}
rd.Close();
}
A ver ahi..
Sigue con error o es que no funciona como tiene que funcionar?
Me arroja el siguiente error
Referencia a objeto no establecida como instancia de un objeto.
Te mandaría una foto pero no se como publicarla aquí xD
Me confundi aca: string[] cadena = linea.Split(new Char [] {'/');
No cerre bien el "{}"
Cambiala por:
string[] cadena = linea.Split(new Char [] {'/'});
Muchisimas gracias, me funciono perfecto, gracias por tu tiempo :D!
De nada, la proxima vez simplemente busca "Split() C#" en google xD
split("/".tochararray)
debería de funcionar también. O incluso split({"/"[0]})