[C]Dateiinhalt in String speichern
-
Nachdem wir jetzt Stringbearbeitung behandelt haben, folgt hier die Dateibearbeitung.
FILE *f; char puffer[BUFSIZ]; f=fopen("data.txt","rt"); if(f == NULL) { printf("Fehler beim öffnen.\n"); } while(fgets(puffer, BUFSIZ, f)) { char url[255], znummer[255], pfad[255], pword[255]; if( 4==sscanf(puffer,"%254[^|]|%254[^|]|%254[^|]|%254s",url,znummer,pfad,pword) ) puts("OK"); else puts("Fehler"); } fclose(f);
Ich weiß auch schon, welches Thema das nächste sein wird.
-
So, wenn ich das jetzt richtige verstehe, bzw. wenn das richtig läuft sollte meein Programm jetzt die strings erstellt haben.
Allerdings kommt bei mir jetzt die frage auf wiese diese heißen oder wie prüfen kann ob diese auch richtig aus der Datei ausgelesen wurden.
printf("%254",url);
Oder wie kann ich damit jetzt weiterarbeiten?
Achja, bei deinem Code @Wutz wird mir OK und Fehler ausgegeben.
Schon fast bissel doof das ich soviel frag, aber leider hab ich bisher nicht das Wissen ob von alleine drauf zukommen.
-
Ausgeben eines Strings mit
printf("%s",string);
Wenn sowohl OK/Fehler ausgegeben wird hast du nicht richtig abgetippt.
-
EDIT:::Ok, hat sich erledigt habs hinbekommen.!!!
Nur eine Frage hätte ich noch, ist es möglich die jetzt erhalten strings in eine Variable zu bekommen?
ich nehm mal direkt das beispiel aus meinem Programm.
/* Dieses Programm öffnet einen Browser und Tippt die Anmeldedaten in die Textfelder*/ int i; char zollnummer[255]={"/*Da sollten die Strings rein */"};//Zollnummer char softzert[255]={""}; //Software-Zert. char pin[255]={""}; //PIN ..... Sleep(3000); //Zollnummer eintragen for(i=0;i<strlen(zollnummer);i++) { keybd_event(VkKeyScan(zollnummer[i]),0,0,0);//Tastendruck keybd_event(VkKeyScan(zollnummer[i]),0,KEYEVENTF_KEYUP,0);//Loslassen
Wenn ich bisher den String (z.b. URL) eingefügt habe, Tipp mein Programm einfach nur URL ins Textfeld. Allerdings sollte ja der Inhalt der txt Datei dor eingetragen werden.
-
bethebe schrieb:
Ja, habe mich doch bei Wutz schon bedankt
Na dann ists ja gut.
bethebe schrieb:
Jetzt die Frage, wie kann ich damit weiterarbeiten, die Daten sollen später in ein Formular übertragen werden.
Hmm, wenn du deine Daten einmal in Strings aufgeteilt hast, musst du schon selbst wissen, was du damit anstellen willst. Wenn du die Strings ausserhalb der Schleife verwenden willst, musst du sie ausserhalb der Schleife definieren.
-
Ja, habs auch hinbekomme, war grade am editieren meines Betrags, da kamst du mir etwas zuvor
-
bethebe schrieb:
Nur eine Frage hätte ich noch, ist es möglich die jetzt erhalten strings in eine Variable zu bekommen?
Naja, du kannst ein Array von 4 Zeigern auf Zeichen anlegen, und dort die vier Anfangs-Adressen hinlegen. Was hast du vor?
Übrigens ist das sicher kein solider Entwurf, wenn er versucht, einen Browser fernzusteuern, nur um eine HTTP-Anfrage zu machen.
-
Das Formular ist nen JavaApplet, hab also keine Möglichkeit dieses auszulesen oder mit irgendwelchen HTML sachen da was auszufüllen
Und da ich eh Übung in C brauche und es Ziemlich "cool" ist das mit nem eignen Programm zu machen, wird das von mir so gelöst
edit.:
Also Habs jetzt hinbekommen.
So siehts aus:FILE *f; char puffer[BUFSIZ]; f=fopen("data.txt","rt"); if(f == NULL) { printf("Fehler beim öffnen.\n"); } int i; char url[255], znummer[255], pfad[255], pword[255]; if( 4==fscanf(f,"%254[^|]|%254[^|]|%254[^|]|%254s",url,znummer,pfad,pword) ) puts("OK"); else puts("Fehler"); fclose(f); ShellExecute(NULL, "open", "/* Hier steht die URL*/", NULL, NULL, SW_SHOWNORMAL); //Login-Page öffnen Sleep(3000); //Zollnummer eintragen for(i=0;i<strlen(znummer);i++) { keybd_event(VkKeyScan(znummer[i]),0,0,0);//Tastendruck keybd_event(VkKeyScan(znummer[i]),0,KEYEVENTF_KEYUP,0);//Loslassen }
Nur noch ein Problem, VkKeyScan gibt nur Kleinbuchstaben aus, bzw. gibt auch kein "/,:,;" also einfach also wozu schift oder sontiges gedrückt werden.
Mal schauen wie ich das noch löse, oder hat wer ne Idee.
Ach und noch ein ganz dickes Danke an euch. Hätte das sonst wohl dieses Jahr nicht mehr hinbekommen
-
bethebe schrieb:
Nur noch ein Problem, VkKeyScan gibt nur Kleinbuchstaben aus, bzw. gibt auch kein "/,:,;" also einfach also wozu schift oder sontiges gedrückt werden.
Solche Sachen würde ich in der Windows-Ecke nachfragen.
-
Das ist ne gute Idee, obwohl ich auch schon ne Lösung gefunden hab, die aber extrem Umfachreich ist und mein Programm sehr unüberischtlich aussehen lässt.
Vielleicht gibts ja noch ne andere Möglichkeit. Aber für heute reichts ertsmal.
Schönen Feierband