JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=d9dcf6ccac81b492bcefae85ed2290e2Medaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Zeichen einzeln einlesen

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Fragen, Antworten und Kritik
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Cyianor
Super JLI'ler



Anmeldedatum: 23.12.2002
Beiträge: 452

Medaillen: Keine

BeitragVerfasst am: 23.12.2002, 15:54    Titel: Zeichen einzeln einlesen Antworten mit Zitat

Hi,

ist es eigentlich möglich, oder besser gesagt, wie kann man aus einer Textdatei die Zeichen einzeln einlesen?
Also wenn ich jetzt zum Beispiel nur das 2 Zeichen in Zeile 4 wissen will. Question
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
AFE-GmdG
JLI MVP
JLI MVP


Alter: 44
Anmeldedatum: 19.07.2002
Beiträge: 1374
Wohnort: Irgendwo im Universum...
Medaillen: Keine

BeitragVerfasst am: 23.12.2002, 20:54    Titel: Antworten mit Zitat

Die Position mußt du zwar selbst bestimmen, aber mit fgetc() kann man genau ein Zeichen einlesen. Datei mit fopen öffnen, mit fgetc die Zeichen Lesen und Datei wieder schließen. Allerdings ist es wesentlich performanter, wenn man eine ganze Textzeile einließt, und den String zur Verarbeitung nutzt...

AFE-GmdG
_________________
CPP:
float o=0.075,h=1.5,T,r,O,l,I;int _,L=80,s=3200;main(){for(;s%L||
(h-=o,T= -2),s;4 -(r=O*O)<(l=I*I)|++ _==L&&write(1,(--s%L?_<(L)?--_
%6:6:7)+\"World! \\n\",1)&&(O=I=l=_=r=0,T+=o /2))O=I*2*O+h,I=l+T-r;}
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Cyianor
Super JLI'ler



Anmeldedatum: 23.12.2002
Beiträge: 452

Medaillen: Keine

BeitragVerfasst am: 26.12.2002, 19:46    Titel: Antworten mit Zitat

Du hast geschrieben, das man mit fgetc() ein Zeichen einlesen kann, aber wie kann ich bestimmen, welches Zeichen, und wie meinst du das mit ganze Zeile einlesen und dann aus dem String die Zeichen rausholen?????
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
DaN00b
JLI'ler



Anmeldedatum: 10.08.2002
Beiträge: 159

Medaillen: Keine

BeitragVerfasst am: 26.12.2002, 22:04    Titel: Antworten mit Zitat

also zum zweiten:

du willst anscheinend aus z.b. einer textdatei ein zeichen auslesen das geht anscheinend wie afe gesagt hat mit fgetc()

aber es gibt auch die möglichkeit eine ganze zeile aus einer text oder binärdatei auszulesen mit fgets() glaub ich

die zeile kannste dann in nem string speichern und den string dann selbst bearbeiten so wie du das willst
_________________
Carpe Diem - Seize the day - Nütze den Tag!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Cyianor
Super JLI'ler



Anmeldedatum: 23.12.2002
Beiträge: 452

Medaillen: Keine

BeitragVerfasst am: 27.12.2002, 10:36    Titel: Antworten mit Zitat

Sorry, bin noch ziemlicher Anfänger. Wie kann ich denn einen String bearbeiten? Embarassed
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Christian Rousselle
Site Admin


Alter: 47
Anmeldedatum: 19.07.2002
Beiträge: 1630

Medaillen: Keine

BeitragVerfasst am: 27.12.2002, 12:09    Titel: Antworten mit Zitat

HalliHallo,

also, wie weit bist du denn? Kannst du die Datei öffenen (fopen)? Danach
kannst du mit fgets() eine komplette Zeile aus der Textdatei lesen. Diese
liest du am besten in einen String (Feld von charactern). In diesem Feld kannst du dann auf die einzelnen Buchstaben zugreifen:

Code:


char buf[1024]; // der String/Puffer für die Zeichen

FILE* Datei = fopen("c:\\datei.txt","rt");

if(Datei)
{
    fgets(buf,1023,f);
    printf("3. Zeichen aus der ersten Zeile ist : %c",buf[2]);

}

fclose(f);



Christian
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Cyianor
Super JLI'ler



Anmeldedatum: 23.12.2002
Beiträge: 452

Medaillen: Keine

BeitragVerfasst am: 29.12.2002, 18:11    Titel: Antworten mit Zitat

Im Buch steht aber das man mit fgets() nur eine Zeile herauslesen kann, dann stoppt das ganze, wenn ich jetzt aber nur die zweite Zeile herauslesen will.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
AFE-GmdG
JLI MVP
JLI MVP


Alter: 44
Anmeldedatum: 19.07.2002
Beiträge: 1374
Wohnort: Irgendwo im Universum...
Medaillen: Keine

BeitragVerfasst am: 29.12.2002, 19:30    Titel: Antworten mit Zitat

... kommt der nächste Aufruf von fgets zum Zug Smile

Ps.: Zu deiner Signatur: Game Over!
_________________
CPP:
float o=0.075,h=1.5,T,r,O,l,I;int _,L=80,s=3200;main(){for(;s%L||
(h-=o,T= -2),s;4 -(r=O*O)<(l=I*I)|++ _==L&&write(1,(--s%L?_<(L)?--_
%6:6:7)+\"World! \\n\",1)&&(O=I=l=_=r=0,T+=o /2))O=I*2*O+h,I=l+T-r;}
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Cyianor
Super JLI'ler



Anmeldedatum: 23.12.2002
Beiträge: 452

Medaillen: Keine

BeitragVerfasst am: 30.12.2002, 14:38    Titel: Antworten mit Zitat

Hä, wie dann kommt der zweite Aufruf von fgets(), dann liest er doch wieder die erste Zeile.

Ps: was ist an meiner Signatur so schlimm?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
VerruecktesHuhn
Super JLI'ler



Anmeldedatum: 30.07.2002
Beiträge: 492
Wohnort: Stuttgart
Medaillen: Keine

BeitragVerfasst am: 30.12.2002, 15:59    Titel: Antworten mit Zitat

Das ist so: beim ersten aufruf wird die erste Zeile, beim zweiten, die zweite und so weiter ausgelesen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Fragen, Antworten und Kritik Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum