Ich habe einige Fragen, ich möchte Eingabe .txt Dateiparameter lesen und output.txt schreiben. Ich kann nur eine Zeile finden, wie kann ich alle Zeile das gleiche für diese Frage finden? und wenn input.txt Datei parameter löschen, löscht output.file die Zeichen.lese Datei und schreibe Datei in C
input.txt Datei Details
write: 3 a 4 b 1 \n 2 d
delete: 1 a 2 b
output.txt zuerst Paramater gilt
aaa bbbb
dd
output.txt zweite Paramater gelten werden
aa bb
dd
dank führen führen werden für Ihre Antwort im Voraus
#include <stdio.h>
#include <stdlib.h>
#include<string.h>
int main(void)
{
FILE *read, *write; /* files pointers */
char *source_file = "input.txt";
char *dest_file= "output.txt";
int count;
char ch;
char choose []="write";
int z=0;
if((read=fopen(source_file, "r")) == NULL) /* files check ? */
{
printf("%s didnt' open .\n", source_file);
exit(1);
}
if((write=fopen(dest_file, "w")) == NULL)
{
printf("%s didnt. open \n", source_file);
exit(2);
}
fscanf(read,"%s%d%c",&choose,&count,&ch);
while((ch = fgetc(read)) != EOF)
{
printf("%d%c",count,ch);
z=0;
for (; z<count; z++)
{
fprintf(write,"%c",ch);
printf("\n");
}
fprintf(write," ");
fscanf(read,"%d%c",&count,&ch);
printf("\n");
}
fclose(read); /* files close */
fclose(write);
printf("%s > %s\n",source_file, dest_file);
return 0;
}
0) '1 \ n '->' 2 \ n' 1) 'char wählen [] = "Schreiben";' klein für 'löschen'. 2)% s% d% c "' -> '"% [^:]:% d% c "' kann aber '\ n' (zwei Zeichen) nicht lesen – BLUEPIXY
Vielen Dank für Ihre Antwort, wenn ich versuchte ich sah den Fehler, Wie kann ich das Problem lösen? – youngman
Der Vorschlag, ich denke, dass jede gute (und einfach), wenn Sie behandelt nach dem Löschbefehl auf den Schreibbefehl anwenden. ZB 'write: 3 a 4 b 1 \ n 2 d löschen: 1 a 2 b' ==> update schreiben command zu 'schreiben: 2 a 2 b 1 \ n 2 d' – BLUEPIXY