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

chowchow

Dúvida: strings e char

6 mensagens neste tópico

Boas,

Estou a programar em c# e iniciei-me na leitura de ficheiros. O ficheiro tem umas 2000 linhas e em cada uma, tenho que sacar 3 valores (double) separados por 2 vírgulas.

A minha ideia é passar caracter a caracter para uma string e, após encontrar 1 vírgula, fazer a conversao para double.

Acontece que não posso fazer isto:

TextReader tr = new StreamReader(fileName);

tr.ReadLine();

string aux_read,aux_copy;

aux_read=tr.ReadLine();

for(int j=0;j<aux_read.Length;j++){

aux_copy[j]=aux_read[j]; ->erro

(...)

}

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Ok já sei. Vi este exemplo:

char[] charBuf = new char[1024]; // Example char array

string s = ""; // Example empty string

s = new string(charBuf); // Create new string passing charBuf into the constructor

Podem fechar. Desculpem.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

tas a usar as maneiras mais trabalhosas e basicas de fazer as coisas numa linguage como o C#. se tas a usar essa linguagem usa funções mais apropriadas, como por exemplo expressões regulares e vais lendo linha a linha como já tens feito. n ha necessidade de percorreres 2000 caracteres, um a um...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

A solução do Nazgulled é uma boa solução se optares por fazer tudo programaticamente.

Outra hipótese é usares um driver ODBC de texto e leres esse ficheiro como se fosse uma tabela, permitindo-te ler apenas os valores de cada "coluna"/posição que te interessam. Assim deixas todo o trabalho chato de leitura e manipulação do ficherio para o driver de ODBC.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O ficheiro tem este formato:

251000,370000,1264.44

251020,370000,1252.27

251040,370000,1239.42

(...)

Eu quero extrair estes valores e passá-los para uma matriz.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O ficheiro tem este formato:

251000,370000,1264.44

251020,370000,1252.27

251040,370000,1239.42

(...)

Eu quero extrair estes valores e passá-los para uma matriz.

Os drivers ODBC de texto costumam ser flexiveis e permitir esse tipo de parametrização, ou seja, dizer que os campo são separados por , ou outro símbolo.  Daí ser fácil acedê-los como se fossem uma tabela.

Independentemente da forma como os lês, colocá-los na matriz é outra conversa.

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