Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > Hallo nochmal, > also ins Flash schreiben ging gut. Mit dem Auslesen war es schwieriger. Die Ausgabe auf mein Tochlcd funktionierte gleich, > aber um die Daten auf das lcdext zu bekommen und um die Daten weiter zu bearbeiten, > mußten die byteBuf[]-Daten wieder in ein String umgewandelt werden. > Mit flash.readStringArray bekam ich auch die abgespeicherten Werte ab einer bestimmten Position > aufs extLCD, aber ich konnte nicht die Länge bestimmen. > Und an dem Versuch, es gleich als StringArray abzuspeichern, bin ich kläglich gescheitert. > Falls das jemand geschaft hat, täte mich ein kleines Beispiel interessieren. > > Wie dem auch sei, mit der Zauber-Routine von midString gelang es mir dann byte buf[] in String umzuwandeln. > Falls jemand eine konventionelle Lösung hat...Bin ich daran interessiert. > > <code> > //Flash lesen > zeile=0; > lcdext.clear(); > touchlcd.clear(); > for k=1 ... 10 > { > str.clear(s); > flash.readByteArray(1,k*64,buf,64); > //mem.copy(s,0,buf[35],20); //funktioniert leider nicht > strx.insert(buf[35],s,0,20);//geht doch, byte[] in string > lcdext.delline(1); > lcdext.line(1); > lcdext.print(s); > lcdext.delline(2); > lcdext.line(2); > lcdext.zahl3(str.length(s)); > touchlcd.text('L',0,zeile,buf[35],20); > zeile=zeile+6; > sleep 3000; > } > </code> > mfg > Werner > > > Hey Martin, > > dann klon ich eben Äpfel und Birnen. Ich möchte Datensätze die größer sind als 30 Byte abspeichern. > > Aber dank eines Beitrages vom April 2003 in diesem Forum über mem.copy, habe ich die Lösung gefunden. > > Bin gerade am ausprobieren.Sieht aber gut aus. Anbei der Zaubercode! > > <code> > > //irgendwo am Anfang > > byte buf[64]; > > > > //Flash beschreiben > > for k=2 ... 11 > > { > > mem.fill(buf,64,32); > > mem.copy(buf,0,location[k].breiteB,1); > > mem.copy(buf,1,location[k].breite,11); > > mem.copy(buf,12,location[k].laengeL,1); > > mem.copy(buf,13,location[k].laenge,12); > > mem.copy(buf,25,location[k].datum,10); > > l=str.length(location[k].name); > > mem.copy(buf,35,location[k].name,l); > > lcdext.line(1); > > lcdext.zahl(flash.writeByteArray(1,k*64,buf,64)); > > } > > lcdext.line(2); > > lcdext.print("Erledigt"); > > </code> > > Aber trotzdem vielen Dank für deine Antwort. > > > > Ein glücklicher Werner. > > > > > Hallo Werner > > > > > > Du versuchst gerade Äpfel auf Birnen zu Klonen ;) > > > ein String benötigt unabhängig von seiner Länge immer 32 Byte! > > > Strings kannst du mit der Funktion Flash.writeString() direkt in den Flash schreiben, > > > dabei musst du beachten daß du mit 32 er Schritten Addressierst. > > > Siehe Modulhilfe Flash.HTML. > > > > > > Gruß Martin > > > > > > > > > > Hallo zusammen, > > > > ich möchte mehrere Strings in ein byte[] Array schreiben, um es dann in den Flash-Speicher zu speichern. > > > > Hier meine definition: > > > > > > > > type gpsDaten > > > > { > > > > string breiteB; > > > > string breite; > > > > string laengeL; > > > > string laenge; > > > > string name; > > > > } > > > > > > > > gpsDaten location[15]; > > > > > > > > byte buf[64]={location[x].breiteB,location[x].breite,location[x].laengeL,location[x].laenge,location[x].name}; > > > > > > > > Aber irgendwie gelingt mir das nicht. Was mache ich verkehrt? Wie bekomme ich die Daten in buf? > > > > > > > > mfg > > > > Werner > > > > > > > > > > > >