|
JLI Spieleprogrammierung
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
smile_virus Junior JLI'ler
Alter: 34 Anmeldedatum: 19.08.2004 Beiträge: 64
Medaillen: Keine
|
Verfasst am: 25.02.2005, 12:04 Titel: arrays in buffer schreiben |
|
|
hallo
wie kann ich mittels sprintf oder ähnlichem arrays in strings schreiben
geht das auch noch anders als so:
Code: |
sprintf(buf,"%d,%d,%d,%d",Feld[0],Feld[1],Feld[2],Feld[3]);
|
? |
|
Nach oben |
|
|
Patrick Dark JLI Master
Anmeldedatum: 25.10.2004 Beiträge: 1895 Wohnort: Düren Medaillen: Keine
|
|
Nach oben |
|
|
smile_virus Junior JLI'ler
Alter: 34 Anmeldedatum: 19.08.2004 Beiträge: 64
Medaillen: Keine
|
Verfasst am: 25.02.2005, 12:24 Titel: |
|
|
danke für die schnelle antwort
aber kann man das nich noch schneller zum string machen?
ich brauch das nämlich für einen level editor
der soll dann hinterher das erstellte als *.map datei abspeichern können
und da hab ich ja mit 2dimensionalen arrays zu tun
das wär dann doch (zu)viel tipparbeit |
|
Nach oben |
|
|
PeaceKiller JLI Master
Alter: 36 Anmeldedatum: 28.11.2002 Beiträge: 970
Medaillen: Keine
|
Verfasst am: 25.02.2005, 12:28 Titel: |
|
|
Tut mir Leid, aber ich verstehe dein Problem nicht wirklich. Die Methode die Patrick dir gezeigt hat ist wirkliche die Beste.
@Patrick
Wieso benützt du stringstream und nicht einfach string? _________________ »If the automobile had followed the same development cycle as the computer, a Rolls-Royce would today cost $100, get a million miles per gallon, and explode once a year, killing everyone inside.«
– Robert X. Cringely, InfoWorld magazine |
|
Nach oben |
|
|
smile_virus Junior JLI'ler
Alter: 34 Anmeldedatum: 19.08.2004 Beiträge: 64
Medaillen: Keine
|
Verfasst am: 25.02.2005, 12:39 Titel: |
|
|
okay erklär ichs nochmal
ich will ein array in eine textdatei schreiben
da das array ziemlich groß ist, will ich mir tipparbeit sparen
das sieht jetz bei mir ungefähr so aus:
CPP: | Datei = fopen("C:\\test.txt","w");
sprintf(buf,"%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,\n
%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,\n
%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,\n
...
...
...
IntMap[0][0],IntMap[1][0],IntMap[2][0],IntMap[3][0],IntMap[4][0],IntMap[5][0],IntMap[6][0],IntMap[7][0],IntMap[8][0],.....,
IntMap[0][1],......);
fprintf(Datei,buf);
fclose(Datei);
|
da muss es doch auch noch einen anderen weg geben
mit for schleife oder so |
|
Nach oben |
|
|
Jonathan_Klein Living Legend
Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 25.02.2005, 13:12 Titel: |
|
|
äh, ich würds wircklich in ne Binärdatei machen, weil du da gleich den ganzen Speicherbereich kopieren kannst, und das laden auch wesentlich einfacher sein dürfte.
[edit]achja, du kannst natürlich auch das in ner Schleife machen, in dem du da hlat immer nur eine Variable in die Datei schreibst. Am besten 2 Schleifen, eine für jeweils eine Zeile, und die andere außenrum für mehrere Zeilen. Sollte nicht wircklich schwer sein[/edit] _________________ https://jonathank.de/games/ |
|
Nach oben |
|
|
smile_virus Junior JLI'ler
Alter: 34 Anmeldedatum: 19.08.2004 Beiträge: 64
Medaillen: Keine
|
Verfasst am: 25.02.2005, 14:03 Titel: |
|
|
yeah danke für die super idee mit der binärdatei |
|
Nach oben |
|
|
Patrick Dark JLI Master
Anmeldedatum: 25.10.2004 Beiträge: 1895 Wohnort: Düren Medaillen: Keine
|
Verfasst am: 25.02.2005, 16:55 Titel: |
|
|
PeaceKiller hat Folgendes geschrieben: | Wieso benützt du stringstream und nicht einfach string? |
CPP: | ::std::basic_string<char> buffer1 ("");
buffer1 += lexical_cast<::std::basic_string<char> >(wert1); // Casten, da basic_string keinen operator += für zahlenwerte hat
buffer1 += ", ";
buffer1 += lexical_cast<::std::basic_string<char> >(wert2); // Casten, da basic_string keinen operator += für zahlenwerte hat
buffer1 += ", ";
// usw.
::std::basic_stringstream<char> buffer2 ("");
buffer2 << "Array: " << wert 1 << ", " << wert2 << ", " << wert3 << std::endl;
// zugriff auf den string per: buffer2.str();
|
Na was ist besser? Nebenbei: streams wurden extra für sowas ausgelegt, da sie keinerlei probleme haben mit Datentypen für Zeichen oder Werte.
_________________ 'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ] |
|
Nach oben |
|
|
|
|
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
|