Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Como é possível realizar a leitura do conteúdo de um arquivo DBF usando C?
Estou tentando fazer isso mas só consegui se é com um arquivo do qual eu conheço a estrutura, e meu objetivo é fazer algo "dinâmico". Alguém tem alguma ideia?
Valeu!
Em primeiro lugar, muito obrigado pela resposta.
Sobre o primeiro link, eu já o havia encontrado mas, para falar a verdade, não entendi absolutamente nada (estou iniciando em C).
E eu já estou fazendo um header, o problema é que, como falei no primeiro post, não sei fazê-lo "dinâmico" (para ler qualquer DBF), sei somente fazer um leitor para um DBF do qual já conheço a estrutura... :(
Tendo a especificação de um arquivo DBF, você sabe fazer.
Ok, estou criando meu reader. No entanto, há informações das quais não entendi o significado (na "prática", não na tradução).
Lá onde diz "Field Subrecords Structure", entre os bytes 12 e 15 (inclusive), diz: "Displacement of field in record". O que isso quer dizer? Eu não entendi... se alguém puder ajudar, obrigado.
>
Ok, estou criando meu reader. No entanto, há informações das quais não entendi o significado (na "prática", não na tradução).
Lá onde diz "Field Subrecords Structure", entre os bytes 12 e 15 (inclusive), diz: "Displacement of field in record". O que isso quer dizer? Eu não entendi... se alguém puder ajudar, obrigado.
Ola Bruno... Com estes sites sugeridos (principalmente o segundo), você teria a ESTRUTURA do arquivo DBF... Com isso, você saberia que o NOME DO CAMPO ocupa as posicoes X a Y no arquivo... Depois, você tem a area de dados (e saberia o tamanho do dado pelo seu tipo e tamanho - lembrando que alguns tipos tem tamanho fixo e os campos string tem tamanho maximo).
você verah que no inicio do header, tem a qtde de bytes do mesmo... Apos esta qtde, serao os dados...
Se você quiser optar por C++, existem varias classes prontas que você poderia usar... Basteria criar um objeto da classe e usar os metodos (Open, Close, etc)...
Abracos///
http://www.hftonline.com/forum/archive/index.php/t-8209.html
Se você não achar material, dá pra começar a escrever um header:
http://www.dbase.com/KnowledgeBase/int/db7_file_fmt.htm