-
Posts
6 -
Cadastrado em
-
Última visita
Reputação
6-
C Como inserir um caractere espaço em uma determinada posição de um arquivo .txt
André T Franco respondeu ao tópico de André T Franco em C/C#/C++
@arfneto Eu queria alterar o arquivo original mesmo ( o arquivo1.txt ), eu não sabia que era possível fazer isso que você me ensinou kkkk, mas obrigado mesmo, e mais uma vez peço desculpas por postar a "imagem" ao invés do texto ou o arquivo diretamente kkkk. Só tenho a agradecer, consegui resolver o problema graças aos ensinamentos de todos vocês. Esses seriam os arquivos referentes aos problemas que postei, mas como mencionei consegui resolvê-los graças a ajuda de vocês. arquivo1.txt arquivo2.txt -
C Como inserir um caractere espaço em uma determinada posição de um arquivo .txt
André T Franco respondeu ao tópico de André T Franco em C/C#/C++
Perdão meus nobres, passei uns dias sem acesso ao fórum, desde já agradeço bastante por todas as dicas e ensinamentos repassados. Irei tentar aqui como você recomendou @devair1010. Também farei a tentativa recomendada @Felipecfk. Peço desculpas por inserir apenas a imagem @arfneto , sim, eu queria alterar o texto do arquivo .txt original. Pois esse arquivo vai ser apenas para leitura em outra etapa do meu algoritmo, porém, para ser lido da forma desejada esse espaço faz toda a diferença. -
Galera, preciso de uma ajuda com um algoritmo que estou desenvolvendo, inclusive abri outro tópico há uns dias atrás a respeito de outras dúvidas que surgiram sobre ele e o pessoal me ajudou bastante. Bom, é o seguinte: eu preciso inserir um caractere de espaço em um arquivo1 de entrada, porém todas as minhas tentativas de inserir esse espaço me resultaram na perca de 1 caractere, pelo que eu entendi o que está acontecendo é que o ao invés desse caractere ser adicionado/incrementado na posição desejada ele está substituindo o caractere já existente na posição por esse espaço. Nas minhas tentativas falha eu tentei direcionar o cursor até a posição desejada usando fseek( ) e em seguida imprimindo o espaço com fputc( ), também tentei deslocar o conteúdo do texto em uma posição posterior, mas dessa forma estou perdendo conteúdo no final do texto . Segue uma imagem do meu "arquivo1" com a indicação da posição que eu desejaria inserir esse espaço(já existe um espaço nessa posição e eu gostaria de acrescentar mais um). Além disso, se possível, eu também gostaria de saber como eu faria para remover esse espaço que foi inserido. #include <stdio.h> #include <string.h> int main() { FILE *arquivo1; arquivo1 = fopen("arquivo1.txt","r+"); fseek(arquivo1,-55,SEEK_END); fputc(' ',arquivo1); // inserindo espaço na posição desejada fclose(arquivo1); return 0; }
-
C Como navegar até determinada linha-coluna para inserir caracteres ao texto
André T Franco respondeu ao tópico de André T Franco em C/C#/C++
-
C Como navegar até determinada linha-coluna para inserir caracteres ao texto
André T Franco respondeu ao tópico de André T Franco em C/C#/C++
@devair1010Boa tarde amigo, obrigado por responder. Perdão kkk, eu só não postei o arquivo1/leitura porque não julguei necessário, só postei o arquivo2 de saída/escrita pelo falo do problema ser somente na saída, mas basicamente o que meu programa faz é ler esse arquivo1 e copiar o conteúdo hexadecimal após essas 2 strings "@ffea" e "@ffe4" e inserindo alguns valores FF entre os valores copiados e um q/n no final. Mais tarde quando tiver no Pc novamente posso mandar uma imagem do arquivo1 pra você entender melhor. -
C Como navegar até determinada linha-coluna para inserir caracteres ao texto
André T Franco postou um tópico em C/C#/C++
Salve meus nobres, venho através desse post tirar uma dúvida que estou tendo a respeito de um algoritmo em C que estou desenvolvendo. Basicamente eu só preciso mover o cursor até a linha 2- coluna 49 e inserir uma quebra de linha \n. Segue abaixo meu código, e a imagens referentes ao arquivo de saída que preciso inserir esta quebra de linha. =============== CÓDIGO ======================= #include <stdio.h> #include <string.h> int main() { FILE *arquivo1 = fopen("arquivo1.txt", "r"); FILE *arquivo2 = fopen("arquivo2.txt", "w"); char buffer1[1000]; char buffer2[1000]; int encontrou1 = 0; int encontrou2 = 0; int ignorar1 = 0; int ignorar2 = 0; if (arquivo1 == NULL || arquivo2 == NULL) { printf("Erro ao abrir os arquivos.\n"); return 1; } while (fgets(buffer1, 1000, arquivo1) != NULL) { if (encontrou1 && strstr(buffer1, "@ffea") != NULL) { ignorar1 = 1; } if (encontrou1 && !ignorar1) { fprintf(arquivo2,"@FFE0\nFF FF FF FF "); (*strchr(buffer1,'\n')) = '\0'; fputs(buffer1, arquivo2); fprintf(arquivo2,"FF FF "); } if (strstr(buffer1, "@ffe4") != NULL) { encontrou1 = 1; } } fseek(arquivo1,0,SEEK_SET); while (fgets(buffer2, 1000, arquivo1) != NULL) { if (encontrou2 && strstr(buffer2, "q") != NULL) { ignorar2 = 1; } if (encontrou2 && !ignorar2) { (*strchr(buffer2,'\n')) = '\0'; fputs(buffer2, arquivo2); } if (strstr(buffer2, "@ffea") != NULL) { encontrou2 = 1; } } fprintf(arquivo2,"\nq\n"); fclose(arquivo1); fclose(arquivo2); return 0; }
Sobre o Clube do Hardware
No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais
Direitos autorais
Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais