Ajuda urgente c#

spin_

Membro
bom dia..sou iniciante em c#, tenho uma aplicação para fazer que é o seguinte:
numa textbox insiro um numero quando carrego num botao ele vai a um ficheiro de texto (tipo base de dados) passa tudo para a textbox10, depois aqui vai verificar se existe esse numero..
se existir passa toda a informacao relativa ao numero que inseri para uma richtextbox, senao apresenta mensagem d erro...

eu nao sei se estou a fazer da maneira mais correcta
ja tenho isto feito:

privatevoid button1_Click(object sender, EventArgs e)
{
StreamReader rd = newStreamReader(@"C:\\teste.txt");
string texto= rd.ReadToEnd();
textBox10.Text = texto;
rd.Close();

int i = 0;
string id = textBox1.Text;
int index = id.Length;
string[] campo = newstring[1000];
string[] linha = newstring[1000];



if (index == 1)
id = "0000" + id;
if (index == 2)
id = "000" + id;
if (index == 3)
id = "00" + id;
if (index == 4)
id = "0" + id;

linha = texto.Split('\n');


/* for (i = 0; i < linha.Length -1; i++)
{
campo = linha.Split('|');
if (id.CompareTo(campo[0]) == 0)
{
while (linha != "")
{
richTextBox2.Text = richTextBox2.Text + linha;
i++;
}
}else messagebox.show("O id nao foi encontrado");
}*/


/*do
{
campo = linha.Split('|');
aux = id.CompareTo(campo[0]);
i++;
} while (aux != 0 && i < linha.Length);
switch (aux)
{
case 0:
for (i = linha.Length -1; i >0 ;i++ )
do
{
richTextBox2.Text = richTextBox2.Text + linha;
i++;
} while (linha != "");


break;
default:
MessageBox.Show("O Id do utente inserido nÆo existe!");
break;
}*/

}


como podem ver fiz duas maneiras diferentes primeiro mais simples usei um for pra percorrer o array a procura do numero que foi inserido na caixa, ele passa tudo certo mas aqui o problema é que por o else estar dentro do for mesmo que o numero exista ele ta sempre a mostrar mensagem de erro.

quando utilizo o switch, o problema anterior deixa de existir, mas surge outro quando entra no case 0 ele havia de me mostrar toda a informacao, mas so me passa o campo[0].

ja agora como faço para aceder à ultima posicao de um array?

Se alguem me poder ajudar seria optimo..
Desde já obrigado pela atenção e ajuda.
 
Última edição:
spin_, Qdo temos dúvidas na nossa cabeça parece simples mas depois de se passar a escrita tudo se complica. Quero dizer com isso que não entendi qual era a tua dúvida.
Contudo não queria deixar de te ajudar em uma coisa que sei. Para acederes à última posição de um vector é o seguinte:
- se TMP for por exemplo o teu vector acedes à última posição assim: TMP[TMP.lenght-1] -> simples não é :)

Posso tentar também dizer o seguinte (embora saiba que vai parecer confuso): na 1ª parte do programa (no ciclo for) o que fazes é caso a string da textbox exista na linha do texto do ficheiro apresentas essa linha no richtextbox e nesse caso deves sair para o próximo i (podes usar o "continuo;"). Se richtextbox.lengh ou .lines (deve ter uma propriedade qqr) for > 0 sabes que escreveu alguma coisa e podes sair. Senão mostras o erro.

Cumps
 
Back
Topo