[C#] Manipulando Strings – Usando o método Split
O método Split serve para quebrar uma string em um array de strings de acordo com um delimitador. Este método em um jogo pode ser utilizado para separar o nome do recorde da pessoa em um arquivo, ou seja, você salva o nome do jogador, coloca logo em seguida um separador qualquer (‘,’, ‘:’, ‘\’, ‘|’, etc…), e logo em seguida o recorde dentro de um arquivo. Quando iniciar o jogo você lê esta linha do arquivo e quebra a linha em nome e record usando o método Split.
Exemplo:
// Imagine que tenhamos feito a leitura de um arquivo
string linha = "Kleber|1000000"; // O separador utilizado é o pipe "|"
//crio um array(lista) e nele salvo as duas infomações
//posição do array corresponde ao texto separado por pipe
string[] ranking = linha.Split('|');
// Agora podemos imprimir separados
Console.WriteLine("Nome: " + ranking[0]);
Console.WriteLine("Record: " + ranking[1]);
Outro exemplo:
//crio uma string com diversos dados separados por virgula
string minhasCores = "amarelo, azul, vermelho, branco, rosa, verde";
//crio um array(lista) e nele salvo as cores, sendo que cada
//posição do array corresponde ao texto separado por virgula
string[] cores = minhasCores.Split(",");
Usando o método Split como vocês podem ver, quebrar uma string fica super fácil e o código fica limpo.
Abraços, t+
CategoriasC#
C#, Manipulação de strings, Split, Strings
Estou com Problema para utilizar o split.
em vez de quebrar no separador ele está quebrando letra por letra.
Log.i(CATEGORIA, “Enviando dados… ” + dados);
String [] vMessage = dados.split(“|”);
Log.i(CATEGORIA, “Enviando dados… ” + vMessage[1] + “-” + vMessage[2] + “-” + vMessage[3]);
No log:
Enviando dados… login|dogui|1234
Enviando dados… l-o-g
Cara não sei o que aconteceu, era para funcionar, tenta deixar a string como sendo somente um tipo primitivo “string” ao invés de um objeto “String”.
Douglas, não sei se é isso o seu problema, mas se não me engano, o Split tem que ser usado com aspas simples e letra Maiúscula.
Ex: (dados.Split(‘|’); e não dados.split(“|”);)
Camaradas,
Muito úteis as dicas mas lembrem-se que DEVE USAR ASPAS SIMPLES, é idiota, mas é assim que tem que ser.
VALEU