//aqui entra o código da conversão propriamente dita
end;
except
ShowMessage ('Houve erro na Conversão de Arquivos');
stlcotacoes.Free;
CloseFile(ArquivoMetastockTexto);
CloseFile(ArquivoCotacoesBinario);
end;
Eu até consegui a importação fazendo uma leitura de caracter por caracter, mas ficou meio tosco o código e bastante lento o programa, quando os arquivos a serem importados possuem muitos registros.
Então, baseada em alguns exemplos encontrados na net tentei escrever o código da conversão usando o comando commatext, mas não deu certo.
A conversão de cada campo do formato texto para os tipos de TUmaBarra (string para Tdatetime e double) não é problema.
O que não consegui foi fazer a obtenção dos campos no arquivo texto usando o commatext.
Pergunta
Guest Serena Pereira
Bom dia!
Estou tentando fazer uma importação de um arquivo texto para um a arquivo binário mas não estou conseguindo, de forma satisfatória.
O arquivo texto tem os campos desejados separados por vírgulas.
Trechos da rotina são:
type
TUmaBarra = record
dtmHora, dtmData: TDateTime;
dblAbertura, dblMaxima, dblMinima, dblFechamento: double
end;
procedure ConverteMetastock (var ArquivoMetastockTexto: TextFile;
var ArquivoCotacoesBinario: File of TUmaBarra);
...
// A função descrita a seguir converte um arquivo txt produzido pelo Metastock
// em um arquivo binário.
procedure ConverteMetastock (var ArquivoMetastockTexto: TextFile;
var ArquivoCotacoesBinario: File of TUmaBarra);
begin
reset(ArquivoMetastockTexto);
rewrite(ArquivoCotacoesBinario);
While not eof (ArquivoMetastockTexto) do
begin
readln (ArquivoMetastockTexto, strUmaBarra);
//aqui entra o código da conversão propriamente dita
end;
except
ShowMessage ('Houve erro na Conversão de Arquivos');
stlcotacoes.Free;
CloseFile(ArquivoMetastockTexto);
CloseFile(ArquivoCotacoesBinario);
end;
Eu até consegui a importação fazendo uma leitura de caracter por caracter, mas ficou meio tosco o código e bastante lento o programa, quando os arquivos a serem importados possuem muitos registros.
Então, baseada em alguns exemplos encontrados na net tentei escrever o código da conversão usando o comando commatext, mas não deu certo.
A conversão de cada campo do formato texto para os tipos de TUmaBarra (string para Tdatetime e double) não é problema.
O que não consegui foi fazer a obtenção dos campos no arquivo texto usando o commatext.
Agradeceria muitíssimo por uma ajuda!
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.