Pesquisar na Comunidade
Mostrando resultados para as tags ''fscanf''.
Encontrado 4 registros
-
Para criar este programa utilizei pelo menos cinco funções e duas macros fundamentais para o bom desempenho, que foram as funções: fseek(); Para posicionar o ponteiro de arquivo num byte específico fscanf(); É para o arquivo o que scanf é para o console putc(); Escreve um caracter em um arquivo fgets(); pega uma linha inteira de um arquivo feof();retorna verdadeiro se o final de arquivo foi atingido; E as macros: SEEK_SET, SEEK_CUR. Estas funções e estas macros estão no arquivo de cabeçalho stdio.h. Estas macros trabalham como parâmetros na função fseek(); e são perfeitas para posicionamentos, isto é, acesso aleatórios de dados. SEEK_SET ==> Marca um início no arquivo SEEK_CUR ==> Ponto corrente no arquivo SEEK_END ==> Não foi utilizado neste programa, marca o fim do arquivo. A lógica para posicionar a leitura no início dos nomes das candidatas foi um pouco confusa, note que estes nomes começam na linha seis do arquivo, que começa em zero ( 0 ) e segue até a linha quinze ( 15 ). Então, calculei o tamanho do arquivo e a posição de início dos nomes como já citei acima, e coloquei como condição dentro de um laço while(); A cada ciclo do while(); a variável de controle é incrementada e um novo valor é adicionado, este valor, corresponde ao total de caracteres de cada linha contando com espaços, que obviamente o ciclo pula para a linha mais abaixo, até que o arquivo chegue em sua última linha. Más isto tudo foi porque teimei em fazer esta leitura da coluna dos nomes com fscanf(); Com fgets(); isto teria sido bem mais simples. Um novo arquivo é criado, e recebe escritas dos caracteres dos nomes com a função putc(); agora o arquivo é fechado e aberto novamente como leitura. Esta foi uma breve descrição do funcionamento deste programa, que é indicado a estudantes mais avançados em c. Veja abaixo o link do código do programa: http://codigosfontes-ccplus-plus.blogspot.com.br/2015/10/arquivo-extraindo-e-salvando-coluna.html
-
Programadores em linguagem c tem que ter pleno domínio em manipulação de arquivos, e para provar que não estamos de blá-blá-blá, criei este programa interessante. No programa são usados duas funções para leitura nos arquivos,que é a função fscanf(); e a função fgets(); Más o impressionante aqui é que temos a ousadia de escolher as colunas do arquivo a ser lida, ou o arquivo inteiro é claro. Tá certo que utilizei a função fseek(); em conjunto com a função fscanf();se não seria quase impossível conseguir isto. Já já função fggets(); que é muito mais fácil de trabalhar não se fez necessário a função fseek(); para posicionar a leitura só da coluna dos nomes. Fica difícil falar aqui de cada uma das funções, comandos, ou linha de códigos utilizados no programa, más disponibilizo gratuitamente o código para todos os amantes de linguagem c. Veja abaixo o link do código do programa: http://codigosfontes-ccplus-plus.blogspot.com.br/2015/10/arquivo-escolhendo-colunas-para-leitura.html
-
- programa
- linguagem c
-
(e %d mais)
Tags:
-
Programadores em linguagem c tem boas opções em funções que fazem leitura de arquivos de texto, e uma outra função que pode ser usada para isto é a função fread(); Aliás, é mais recomendado o uso de fread(); para leitura por trabalhar com dados binários ao contrário de outras que trabalham com ASCII, e provoca perda de desempenho em arquivos maiores. A função retorna o número total de elementos lidos, que pode ser menor do que o que foi especificado na chamada da rotina se o final do arquivo for atingido ou se ocorrer um erro. Arquivos binários também podem ser lidos como registros de dados estruturados, Além disso, uma vez que todos os registros tem o mesmo tamanho, os dados podem ser acessados de forma não-sequencial (acesso aleatório). A sintaxe de fread (); é: fread ( &tipo_nome, sizeof ( tamanho ), quantidade, arquivo ); sendo: A variável recebe o endereço dos dados lidos do arquivo tamanho é o número de bytes a ser lido. Para calcular isso você deve usar o operador sizeof, quantidade indica quantos itens serão lidos ( cada item do tamanho especificado ) arquivo é um ponteiro para o arquivo aberto anteriormente. Uma boa prática, aliás sempre uso, é analisar o retorno de fread para ver se não ocorreram erros. Isto pode ser feito com uma instrução deste tipo: if ( fread ( &nome, sizeof ( nome ), 1, arquivo ) != 1 ) printf("Erro de leitura.\n"); O programa é simples e indicado a iniciantes em c. Veja o link do código abaixo: http://codigosfontes-ccplus-plus.blogspot.com.br/2015/10/arquivo-leitura-com-fread.html
-
Aém de fscanf(); que usamos para leitura de textos num arquivo também podemos usar a função fgets(); A função fgets(); lê uma linha inteira de uma vez, ou até que um '\n' tenha sido encontrado. O endereço da string lida, é retornado se a leitura foi realizada corretamente, ou o retorno NULL se a leitura fracassou. Considere como certo a seguinte sintaxe para fegets(); char *fgets ( char *minhaString, int numBytes, FILE *arq ); Vale lembrar que estas duas funções que foram citadas acima, são da biblioteca padrão do c, stdio.h. Neste tópico trago um bom exemplo de leitura de arquivos usando fgets(); A matriz onde armazenamos nosso texto lido do arquivo foi alocada dinamicamente, e liberada após o uso, pela funçõa free(); Note que isto é uma obrigação nossa, já que somos futuros bons programadores em linguagem c. Acompanhe abaixo uma imagem do programa em execução: Na imagem abaixo, temos o nosso arquivo de texto utilizado: Veja abaixo o link do código do programa: http://codigosfontes-ccplus-plus.blogspot.com.br/2015/10/aem-de-fscanf-que-usamos-para-leitura.html