Datei lesen/schreiben

Diskutiere Datei lesen/schreiben im C/C++ Forum im Bereich Programmieren unter Linux/Unix; Hallo zusammen, ich habe lange gesucht aber irgendwie nicht das passende gefunden. Ich will eigentlich erstmal nur eine Datei auslesen...

  1. #1 Matzman, 14.06.2007
    Matzman

    Matzman Jungspund

    Dabei seit:
    14.06.2007
    Beiträge:
    17
    Zustimmungen:
    0
    Hallo zusammen,

    ich habe lange gesucht aber irgendwie nicht das passende gefunden.

    Ich will eigentlich erstmal nur eine Datei auslesen (textdatei). Jedoch scheitert es wohl an der Pfadangabe (so ist meine Vermutung).

    Hier mein Code:

    Code:
    #include <stdio.h>
    
    int main () {
    	char name;
    	char mode = 'r';
    	
    	printf("Welcome\n\n");
    	printf("Please select the file:\n");
    	scanf("%d", name);
    
    	FILE *fp;
    	FILE *fopen ();
    	
    	fp = fopen(&name, &mode);
    	if(fp != NULL) {
    		printf("Erfolgreich");
    		}
    	else {
    		printf("Öffnen gescheitert!");
    		}
    	}
    
    Ich bin Programmieranfänger, also wundert euch nicht wenn da blöde Fehler drin sind.
    Ich hätte da auch noch eine kleine Verständnisfrage:
    Was hat es mit "*fp" aufsich, also mit dem * davor. Und was haben "%" und "&" für Bedeutungen.

    Vielen Dank schonmal.

    Grüße
     
  2. Anzeige

    Anzeige

    Wenn du mehr über Linux erfahren möchtest, dann solltest du dir mal folgende Shellkommandos anschauen.


    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. dpkg

    dpkg Mitglied

    Dabei seit:
    21.04.2007
    Beiträge:
    46
    Zustimmungen:
    0
    Ort:
    Linz
    Das gleiche Programm, nur ohne Fehler:
    Code:
    #include <stdio.h>
    #include <stdlib.h>
    
    int main( void ){
     char name[129];
     FILE *f;
     printf("dateiname: ");
     scanf("%128s",name);
     f = fopen(name,"r");
     if(f){
      printf("Erfolg\n");
      fclose(f);
     }else printf("Fehler\n");
     return 0;
    }
    
     
  4. #3 Matzman, 14.06.2007
    Matzman

    Matzman Jungspund

    Dabei seit:
    14.06.2007
    Beiträge:
    17
    Zustimmungen:
    0
    Hi,

    ich bin echt begeistert wie schnell man hier antworten bekommt...

    Danke für das Programm, aber könntest du mir es noch kommentieren? Dann wäre ich glücklich :)

    Grüße und danke
     
  5. dpkg

    dpkg Mitglied

    Dabei seit:
    21.04.2007
    Beiträge:
    46
    Zustimmungen:
    0
    Ort:
    Linz
    Code:
    #include <stdio.h> //Benötigt für printf, scanf, fopen, fclose
    //stdlib braucht man nicht, ist mir gerade aufgefallen
    
    int main( void ){
     char name[129]; //Für den dateinamen 128 byte reservieren(+1 für 0-Byte)
     FILE *f; //f ist ein zeiger auf eine FILE-Struktur
     printf("dateiname: ");//Selbsterklärend
     scanf("%128s",name);//Max 128 zeichen einlesen (%s steht für string,%d wäre für Integer)
     f = fopen(name,"r"); //Datei mit lesezugriff öffnen
     if(f){ //Bei Erfolg zeigt f auf eine Speicheradresse ungleich 0, was in c als true interpretiert wird
      printf("Erfolg\n");
      fclose(f); //Datei schliesen
     }else printf("Fehler\n"); //Bei fehler muss(kann) die datei nicht geschlossen werden
     return 0;
     }
    
    
     
Thema:

Datei lesen/schreiben

Die Seite wird geladen...

Datei lesen/schreiben - Ähnliche Themen

  1. mehrere Textdateien gleichzeitig öffnen.

    mehrere Textdateien gleichzeitig öffnen.: Hallo Es geht um das editieren mehrerer Textdateien gleichzeitig. Diese kann man natürlich in einem Texteditor öffnen. Mein Problem ist, dass die...
  2. wget: Lädt bestimmte Dateitypen nicht

    wget: Lädt bestimmte Dateitypen nicht: Hallo zusammen, ich habe ein Problem mit wget beim Erstellen eines Mirrors. Bei bestimmten Dateitypen werden die Dateien nicht geladen, sondern...
  3. Debian erlaubt Booten vom F2FS-Dateisystem

    Debian erlaubt Booten vom F2FS-Dateisystem: Debian-Entwickler Roman Perier arbeitet an der Umsetzung der Unterstützung des Dateisystems F2FS in GRUB und Initramfs, um der Distribution das...
  4. Dateisystem Reiser5 soll Skalierbarkeit und Effizienz steigern

    Dateisystem Reiser5 soll Skalierbarkeit und Effizienz steigern: Reiser5 soll als Nachfolger des Dateisystems Reiser4 erhebliche Geschwindigkeitssteigerungen bringen. Möglich werden soll das durch die Nutzung...
  5. RHEL 8.0 Partitionsreihenfolge in der Kickstart-Datei festlegen

    RHEL 8.0 Partitionsreihenfolge in der Kickstart-Datei festlegen: Hallo zusammen, Aktuell habe ich die folgende Partitionierung im Kickstart File festgelegt: bootloader --location=mbr --boot-drive=sda ignoredisk...
  1. Diese Seite verwendet Cookies um Inhalte zu personalisieren. Außerdem werden auch Cookies von Diensten Dritter gesetzt. Mit dem weiteren Aufenthalt akzeptierst du diesen Einsatz von Cookies.
    Information ausblenden