Felipe_sp Postado Novembro 30, 2010 Denunciar Share Postado Novembro 30, 2010 Olá amigo, algum de vocês saberia como usar o comando Scanf para que eu possa "pegar" os dados de um arquivo .txt para dentro do programa.Abraços... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Alex Chiele Postado Dezembro 1, 2010 Denunciar Share Postado Dezembro 1, 2010 Olá amigo, algum de vocês saberia como usar o comando Scanf para que eu possa "pegar" os dados de um arquivo .txt para dentro do programa.Abraços...Bom eu tenho um exemplo dele lendo uma matriz e armazenando o conteúdo para depois imprimirFILE *ap; ap= fopen("matriz1.txt", "r"); for(f=0;f<F;f++) { for(c=0;c<C;c++) { fscanf(ap,"%d",&matriz1[f][c]); } } fclose(ap);"F" y "C"= e equivalente a 5 que seria o tamanho da matriz Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Felipe_sp Postado Dezembro 1, 2010 Autor Denunciar Share Postado Dezembro 1, 2010 Olá amigo, então...me perdoe pelo erro, mas é o método "FSCANF" e não "SCANF" como coloquei no tópico. Eu até consigo salvar o texto em um arquivo .txt e tal, porém não estou conseguindo carregar esse arquivo de volta no sistema, sei que é utilizado a função FSCANF, porém não sei como utilizá-la corretamente. Se alguém puder me ajudar fico muito grato.abraços... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 cauepor Postado Dezembro 1, 2010 Denunciar Share Postado Dezembro 1, 2010 (editado) supondo que voce tenha uma arquivo e dentro dele contenha a idade de uma pessoa em cada linha, o nome do arquivo é exemplo.txt, ficaria +- assim:FILE *ponteiro; ponteiro = fopen("exemplo.txt", "r"); //abrindo arquivo no modo leitura while(!feof(ponteiro)) //enquanto não chegar ao fim do arquivo { fscanf(ponteito,"%d \n",&idade); //lê a linha do arquivo e depois pula para a próxima linha printf("Idade: %d",idade); //imprime na tela o que foi lido } fclose(ponteiro); //fechando o arquivo Editado Dezembro 3, 2010 por Durub Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Felipe_sp Postado Dezembro 2, 2010 Autor Denunciar Share Postado Dezembro 2, 2010 Olá amigo, poxa...muito obrigado mesmo hein, deu certo aqui como eu queria. Tenho mais uma pergunta, aqui eu utilizei o fprintf para gerar um arquivo .txt e depois em outra parte do programa eu utilizei o fscanf para chamar esse arquivo para dentro do programa. Eu consegui carregar o arquivo dentro de uma string, porem o texto não aparece em uma unica linha, aparece uma palavra por linha, teria alguma forma de consertar isso.Fico grato desde já.abraços.. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 cauepor Postado Dezembro 2, 2010 Denunciar Share Postado Dezembro 2, 2010 Felipe_sp, vo te dizer que realmente não entendi sua pergunta euheauhauehuaeh...mas assim....você quer que dentro do arquivo.txt tenha apenas uma linha? ou voce quer imprimir na tela em apenas uma linha independente da forma que estiver no arquivo? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Felipe_sp Postado Dezembro 2, 2010 Autor Denunciar Share Postado Dezembro 2, 2010 Opa amigo, hehehe. Então, quando eu salvo o arquivo .txt, fica perfeito, da mesma forma q eu digito no programa aparece lá no .txt, porém quando eu carrego o arquivo .txt de volta ao programa, as palavras aparecem uma a uma em baixo da outra, gostaria que aparecesse como uma frase normal, entendeu?abraços amigo.... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 cauepor Postado Dezembro 3, 2010 Denunciar Share Postado Dezembro 3, 2010 Opa amigo, hehehe. Então, quando eu salvo o arquivo .txt, fica perfeito, da mesma forma q eu digito no programa aparece lá no .txt, porém quando eu carrego o arquivo .txt de volta ao programa, as palavras aparecem uma a uma em baixo da outra, gostaria que aparecesse como uma frase normal, entendeu?abraços amigo....Huummm, entendi, provavelmente o problema está na impressão da variável que contém o que você leu no arquivo....poste o seu código para podermos analisar... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Felipe_sp Postado Dezembro 3, 2010 Autor Denunciar Share Postado Dezembro 3, 2010 Olá amigo, segue a parte do código responsável por essa operação:printf("Digite o nome do arquivo a ser carregado: \n"); gets(strcarregar); scanf("%s", strcarregar); arquivocarregado=fopen(strcarregar, "r"); while (!feof(arquivocarregado)) { fscanf(arquivocarregado,"%s",&strcarregar); printf("%s \n", strcarregar);Como eu disse antes, é exibido na tela palavra por palavra, uma em cada linha., se puder me ajudar fico muito grato.abraços... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 cauepor Postado Dezembro 3, 2010 Denunciar Share Postado Dezembro 3, 2010 (editado) Olá amigo, segue a parte do código responsável por essa operação:printf("Digite o nome do arquivo a ser carregado: \n"); gets(strcarregar); scanf("%s", strcarregar); arquivocarregado=fopen(strcarregar, "r"); while (!feof(arquivocarregado)) { fscanf(arquivocarregado,"%s",&strcarregar); printf("%s \n", strcarregar); Como eu disse antes, é exibido na tela palavra por palavra, uma em cada linha., se puder me ajudar fico muito grato. abraços... você está mandando imprimir a strcarregar e depois pular uma linha com \n basta tira-lo e ficará tudo em uma linha, tente printf("%s ", strcarregar); Editado Dezembro 3, 2010 por cauepor Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Felipe_sp Postado Dezembro 3, 2010 Autor Denunciar Share Postado Dezembro 3, 2010 Olá amigo, era isso mesmo, ficou show de bola, porém....hehe....eu fui fuçar em alguma coisa lá...e fiz alguma alteração que agora só aparece a primeira palavra do texto, o resto das palavras nem aparece mais, e não estou conseguindo identificar o que aconteceu. Poderia me dar uma ajuda?Segue o código de agora: printf("Digite o nome do arquivo a ser salvo: \n"); gets(strcarregar); scanf("%s", strcarregar); arquivocarregado=fopen(strcarregar, "r"); while (!feof(arquivocarregado)) { fscanf(arquivocarregado,"%s",&strcarregar); printf("%s", strcarregar);Por favor amigo, prometo que será a ultima coisa, hehe. Não consegui visualizar o problema, abraços... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 cauepor Postado Dezembro 3, 2010 Denunciar Share Postado Dezembro 3, 2010 Felipe_sp, primeiramente se eu fosse você teria uma variável que contém o nome do arquivo a ser aberto e uma outra que é utilizada para imprimir no arquivo ou para ler algo no arquivo, pois, utilizando a mesma variável para receber o nome do arquivo e para receber o conteúdo dele tende a dar problemas...teste mudar isto e depois poste o código completo pois o erro pode estar em outro lugar, verifique também se as modificações que você fez não alteraram o que está sendo impresso no arquivo. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Felipe_sp
Olá amigo, algum de vocês saberia como usar o comando Scanf para que eu possa "pegar" os dados de um arquivo .txt para dentro do programa.
Abraços...
Link para o comentário
Compartilhar em outros sites
11 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.