• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Corvus

String

4 mensagens neste tópico

por exemplo usando sockets , o cliente manda uma string com a seguinta informaçaõ para o cliente

* Saturacao e:1* Pluviosidade e:2

e o servidor tem de passar o valor 1 para uma variavel e o 2 para outra variavel

algem me podes ajudar?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu em termos da linguagem nao tenho muitas bases, mas vais ter que fazer assim.

1 partes a string pelo caracter * e copias para uma variavel, depois partes a nova variavel pelo caracter : e guardas o segundo valor, e a mesma coisa para a segunda parte da string original.

Nao sei se o cliente manda sempre isso por ordem, se nao mandar podes colocar para verificar a string se é igual ou nao

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

string strLinha = "* Saturacao e:1* Pluviosidade e:2";

string strDados[] = strLinha.split('*'); // 1 partes a string pelo caracter * e copias para uma variavel,

string strValores1[] = strDados[0].split(':'); // depois partes a nova variavel pelo caracter : e guardas o segundo valor

string strvalor1 = strValores1[1];

string strValores2[] = strDados[1].split(':'); // e a mesma coisa para a segunda parte da string original

string strvalor2 = strValores2[1];

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Experimenta isto. Testado e a funcionar

string strLinha = "* Saturacao e:10* Pluviosidade e:20000";
Console.WriteLine(strLinha.Substring(strLinha.IndexOf(":") + 1, strLinha.IndexOf("*", strLinha.IndexOf(":")) - strLinha.IndexOf(":")-1));
Console.WriteLine(strLinha.Substring(strLinha.LastIndexOf(":") + 1, strLinha.Length - strLinha.LastIndexOf(":")-1));

Isto faz o seguinte:

Pega na string, e corta o que está para a frente do primeiro ":" que encontra, até ao * que tem após os ":" e imprime.

Depois, vai cortar desde a próxima posição após a ultima vez que encontra os ":" até ao fim.

   

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora