Thema: Unbekannten Pfad öffnen
-
Hallo Forum
Ich bin neu hier, schreibe in C und brauche eure Hilfe:
Wie kann man einen unbekannten Pfad öffnen?
Bsp.:
FILE*f;
f=fopen("C:\\Desktop","w+");
Um die Frage zu präziseren:
Wie kann ich eine Datei ohne die Register speichern -> Also ohne "Users\\Beispiel\\"?
Vielen Dank für die Hilfe!
cwriterGeändert von cwriter (10.03.10 um 19:25 Uhr) Grund: Tippfehler
-
10.03.10 21:18 #2
Ich sehe nicht, wo du hier einen "unbekannten Pfad" verwendest, deine sind wohl-definiert. Oder meinst du die Pfade, die ein User in seinen Environment-Variablen stehen hat? Dann wäre die Frage, welchen Compiler du verwenden willst.
Grüße
--
"Möge der Saft mit euch sein" - Yoghurt aus Spaceballs
Tutorial: Programm-Flaschenhälse in PHP mit xdebug finden
-
Das verstehe wiederum ich nicht ganz

Ich benutze Dev-C++, Version 5 Beta.
Ich bin mir allerdings nicht ganz sicher, ob das an der Beta-Version liegt; diese akzeptiert manchmal das "FILE*f;" nicht, es steht dann: "Syntax Error before "f" token".
Kann dieses Problem daran liegen?
Vielen Dank!
cwriter
-
http://enumerator.meinbrutalo.de
Zitat von Aba Assa
-
Nein, das ist der Quelltext:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
#include <stdio.h> #include <stdlib.h> #include <windows.h> #include <unistd.h> int main(int argc, char *argv[]) { char Text; int temp; int end; end=1; while(end=1) { temp=getch("%X"); fflush(stdin); system("cls"); printf("%c",temp); FILE*fp; fp=fopen("Text.txt","w+"); fprintf(fp,"%c",temp); FILE*f; switch(temp) { case 61: f=fopen("Text.txt","w+"); fprintf(f,"s"); fclose(f); continue; } }
Soweit ich sehe, steht oben "#include <stdio.h>"
Es muss ein anderes Problem geben...
Gruss
cwriterGeändert von cwriter (11.03.10 um 18:44 Uhr)
-
Ja, das Leerzeichen fehlt (wahrscheinlich). Vor oder nach dem Asterisk (*) sollte schon ein Leerzeichen kommen. Wo genau ist
Ansichtssache.
[EDIT]
Im Übrigen: Willst Du wirklich while(end=1) scheiben? while(end==1) passt sicher besser.Geändert von Enumerator (11.03.10 um 19:01 Uhr)
http://enumerator.meinbrutalo.de
Zitat von Aba Assa
-
Funktioniert immer noch nicht...

Muss denn der ganze Pfad angegeben werden?
fopen("C:\\Users\\Beispiel\\Desktop\\text.txt", "w+");
Gruss
cwriter
-
Ja und nein.
Man kann den Pfad auch relativ angeben, dann bezieht er sich aber immer auf das aktuelle Arbeitsverzeichnis. Den kompletten Pfad anzugeben sollte aber immer funktionieren - sofern der auch existiert und der Aufrufende (des Programmes) die nötigen Zugriffsrechte hat.
Dennoch, die von Dir beschriebene Fehlermeldung hat damit nichts zu tun.http://enumerator.meinbrutalo.de
Zitat von Aba Assa
-
Vielen Dank für die Hilfe!
Ich habe noch ein Problem
:
Code :1 2 3 4 5
FILE *fp; fp=fopen("C:\\Text.txt","w+"); fseek(fp,0,SEKK_END); fprintf(fp,"%c",temp); fclose(fp);
(Es ist ein Ausschnitt aus dem Code oben, ein wenig verbessert und mit der Korrektur von Enumerator)
Ich will, dass die Variable temp die einzelnen Buchstaben in die Datei schreibt, aber irgendwie ist immer nur der zuletzt getippte Buchstabe in der Datei...
Kann mir jemand helfen?
Vielen Dank im Voraus
cwriter
-
11.03.10 20:17 #10
Hi,
also erstmal heißt das Define SEEK_END nicht SEKK_END. Und zweitens setzt der fseek() deinen Cursor ja direkt ans Ende der Datei. Außerdem ist es echt hilfreich, nicht nur den Ausschnitt zu sehen, sondern den kompletten Code.Grüße
--
"Möge der Saft mit euch sein" - Yoghurt aus Spaceballs
Tutorial: Programm-Flaschenhälse in PHP mit xdebug finden
-
Sorry, war wohl etwas müde.

Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
#include <stdio.h> #include <stdlib.h> #include <windows.h> #include <unistd.h> int main(int argc, char *argv[]) { char Text; int temp; int end; end=1; printf("Hallo!\n"); while(end==1) { temp=getch("%X"); fflush(stdin); system("cls"); printf("Hallo!\n"); printf("%c",temp); FILE *fp; fp=fopen("Text.txt","w+"); fseek(fp,0,SEEK_END); fprintf(fp,"%c",temp); fclose(fp); FILE *fa; switch(temp) { case 61: fa=fopen("Text2.txt","w+"); fprintf(fa,"s"); fclose(fa); continue; } } system("PAUSE"); return 0; }
Das ist der Code.
Aber die Datei beinhaltet immer nur den zuletzt getippten Buchstaben...
Und nochmals Entschuldigung.
cwriterGeändert von cwriter (12.03.10 um 17:43 Uhr)
-
Lies dir mal die Referenz durch bezüglich der Funktionen, die du verwendet hast:
http://www.cplusplus.com/reference/c...stdio/fprintf/
http://msdn.microsoft.com/en-us/libr...8VS.80%29.aspx (_getch ist ISO C++ äquivalent zu getch in C)
-
Äh, Ich verstehe nicht ganz...

Die Funktionen sind gemäss Dev-C++ in Ordnung, das Programm funktioniert auch zum Teil...
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
#include <stdio.h> #include <stdlib.h> #include <windows.h> #include <unistd.h> int main(int argc, char *argv[]) { char Text; int temp; int end; end=1; printf("Hallo!\n"); while(end==1) { temp=getch("%X"); fflush(stdin); system("cls"); printf("Hallo!\n"); printf("%c",temp); FILE *fp; fp=fopen("Text.txt","w+"); fseek(fp,0,SEEK_END); fprintf(fp,"%c",temp); fclose(fp); [B][I][U]FILE *fa; switch(temp) { case 61: fa=fopen("Text2.txt","w+"); fprintf(fa,"s"); fclose(fa);[/U][/I][/B] continue; } } system("PAUSE"); return 0; }
Die markierte Stelle scheint mir das Problem zu sein, aber ich finde keinen Fehler...
Seht ihr etwas?
Gruss
cwriterIntel inside - Idiot outside :-)
Ich schreibe in C und bin Anfänger.
______________________________
Falls ich eines Tages einen guten Beitrag schreiben werde, bitte bewerten und/oder Danke sagen.
Danke
Ähnliche Themen
-
VB 9: Pfad in Richtextbox Speichern und Öffnen
Von Cirric im Forum .NET Windows FormsAntworten: 5Letzter Beitrag: 16.09.08, 22:24 -
In Listbox markierten Pfad öffnen
Von BLADEooz im Forum Visual Basic 6.0Antworten: 7Letzter Beitrag: 29.09.05, 13:24 -
.exe Datei mit unbekannten Pfad laden
Von Christoph1972 im Forum Visual Basic 6.0Antworten: 4Letzter Beitrag: 09.05.05, 12:36 -
Fenster nicht öffnen bei bestimmtem Pfad
Von itnobby im Forum Javascript & AjaxAntworten: 1Letzter Beitrag: 24.10.04, 01:38 -
Schalter nach Pfad ausgerichtet | in PopUp öffnen
Von shari im Forum Flash PlattformAntworten: 1Letzter Beitrag: 06.02.04, 13:26



Zitieren

Login





Lesezeichen