Brauche Hile mit c!!

DaGrumb

Grünschnabel
Ich brauche Hilfe mit einem C-Programm. Es soll eine txt datei lesen, und man soll sie danach im Terminal bearbeiten können. Mein Code beschränkt sich bis jetzt nur auf das auslesen, weil ich nicht weiß wie ich das bearbeiten könnte.

mein code:


#include <stdio.h>

int main() {
FILE* datei;
char zeile[30];
datei=fopen("DATEINAME.TXT", "r");

while(fgets(zeile, 30, datei) != NULL) {
printf("%s", zeile);
}

return 0;
}












#include <stdio.h>
int main(void){
int zahl;
int zahl2;
int zahl3;

printf("Bitte eine Zahl >-1, <31 eingeben: ");
scanf("%i", &zahl);
if(zahl >-1,zahl <31){
printf("Die Zahl ist richtig\n");
}else{
printf("Die Zahl ist falsch. Bitte geben sie eine andere Zahl ein.\n");
scanf("%d", &zahl2);
if(zahl >-1,zahl2 <31){
printf("Die Zahl ist richtig\n");
}else{
printf("Die Zahl ist falsch. Bitte geben sie eine andere Zahl ein.\n");
scanf("%d", &zahl3);
if(zahl >-1,zahl3 <31){
printf("Die Zahl ist richtig\n");
}else{
printf("Die Zahl ist falsch.\n");
}
return 0;
}
}
}
 
Zuletzt bearbeitet:
Muss das Bearbeiten unbedingt in der Konsole stattfinden?

Dafür verwendet man im Normalfall Texteditoren, Notepad++ ist sehr empfehlenswert.

Am einfachsten geht es, wenn du die Zeilennummer und den Inhalt eingibst, und beim Schreiben der Datei die neue Zeile mit der Alten austauschst. Zeichenweise bearbeiten ist nur unnötig kompliziert.

Und vergiss das fclose() am Schluss nicht!

mfg. posi90
 
Danke für die schnelle antwort, aber das editiern muss leider in der Konsole stattfinden :/ fclose ist eingefügt :)
 
Die Konsole ist wirklich nicht Ideal dafür.
Mit deinem Ansatz könntest du eine getch()-Schlaufe machen und die Löschbefehle (Backspace, delete) abfangen und dann den vorher in den Speicher geladenen Text verändern.
Ganz ohne eigene structs wird das aber auch nicht so.gut gehen.

Gruss
cwriter
 
Die Konsole ist wirklich nicht Ideal dafür.[...]

Die Konsole ist perfekt zum Bearbeiten von Dateien, der VIM gehört zu meinen absoluten Favoriten! ;)

Zu dem Problem: Wie willst du die Datei bearbeiten? Bzw. was soll möglich sein? Zeilenweise ersetzen / löschen / einfügen von Text? Wörter suchen & ersetzen?

Grüße,
BK
 
Zurück