Ir para conteúdo
Fórum Script Brasil
  • 0

Lendo arquivos binários


Dandandin

Pergunta

Olá galera,

Estou precisando ler uns arquivos binários e estou utilizando a biblioteca Qt, que no fundo é C++. Mas o problema que estou tendo não importa muito com a linguagem utilizada.

O que eu sei sobre arquivos binários:

É necessário saber, de antemão, quais bytes correspondem a que dados. Na documentação do arquivo que desejo abrir achei algo do tipo: Nesse arquivo existem 20 'words', cada uma com 32 bits (ou seja 4 bytes) sendo que as 10 primeiras são ponto flutuante e as 10 próximas são números inteiros.

então ao ler o arquivo, pensei basta ler 10 floats e 10 ints na sequência que tá tudo certo:

[float][float]..[float][float][int][int]...[int][int]

Já que ambos tem 4 bytes.

Acontece que ao ler os floats, me parece que ele não está pegando de 4 em 4 bytes tanto é que os ints ficam todos zoneados (porque li na sequencia). Ao imprimir os floats recebo coisas do tipo:

-inf

-nan

-e uns números da ordem de 10 elevado a 30

Ao ler os floats como ints (então lendo 20 ints) os ints ficam corretos mas os floats ficam com valores não tão grandes como antes, porem errados.

Estou fazendo algo errado? o raciocínio e tal..

valeu

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...