Für kleine Datenmengen gehen Sie am besten mit automaticoys Lösung mit SharedObjects. Sie benötigen nur wenig Zeit für die Einrichtung und sind eine effiziente Möglichkeit, kleine Datenmengen zu speichern.
Wenn es nicht für Sie ist, können Sie immer in eine Textdatei laden/speichern. Sie können dies mit ByteArrays und FileReferences tun.
Da Sie in einer Word-Datei gespeichert haben, würde ich vorschlagen, Speichern in eine Textdatei wäre der beste Weg, um Ihr Ziel zu erreichen (obwohl anders als Ihr Wort Doc. Vorschlag, ich bin mir nicht sicher .. Ihr Ziel ist eine Art unklar)
Hier ist eine sehr schnelle Demonstration des Speicherns in eine Textdatei .. Wenn Sie Hilfe benötigen, laden Sie es auch, lassen Sie es mich wissen.
function savedata() {
var bytes:ByteArray = new ByteArray();
var fileRef:FileReference = new FileReference();
bytes.writeMultiByte(playername + "\n", "iso-8859-1");
bytes.writeMultiByte(playerscore.toString(),"iso-8859-1");
fileRef.save(bytes,"savedata.txt");
}
Diese ziemlich einfach mit writeMultiByte .. ist, können wir so viele Daten wie vor dem Speichern unserer Textdatei benötigt schreiben! Dies ist besonders nützlich, wenn Sie Datenfelder haben, die Sie speichern müssen.
Wie auch immer, die "iso-8859-1" ist einfach eine Referenz auf den verwendeten Zeichensatz/Dateiformat. Ich bin mir nicht sicher, ob Sie einfach utf-16 usw. schreiben können. habe es immer so benutzt, wie es oben geschrieben ist.
Peter
9547 (aber eine Zeile nach oben)
zu laden, können Sie durch die Linie nur geteilte Daten können, was ein:
Das Ergebnis in der Textdatei hier wird der folgende sein Array voller Strings und Ints/Zahlen (aber Ihre Ergebnisse können funktionieren). Lass es mich wissen, wenn du Hilfe brauchst.
Ich bin nicht sicher, ob dies die effizienteste Methode ist, um das zu erreichen, wonach Sie suchen, da Ihr Ziel mir nicht ganz klar ist, aber es war eine sehr nützliche Methode für mich, große Datenmengen zu speichern Ich vermute, du willst das machen, wenn du alle Spielergebnisse zusammenrechnest.
edit:
Okay, auf die gestellten Fragen Sie unter:
- Um mehr als einen Benutzer zu speichern Punktzahl einfach. Verwenden Sie einfach ein einzelnes Array, das die Daten aus der Textdatei lädt (falls die Textdatei vorhanden ist), fügt dann das neue Ergebnis am Ende des Arrays hinzu und speichert es dann in der Textdatei. Hier
ist ein Beispiel:
var dataloader:URLLoader = new URLLoader();
var dataarray:Array = new Array(); // do this where you intialise other vars
function preparesave() {
dataloader.load(new URLRequest("savedata.txt"));
}
dataloader.addEventListener(Event.COMPLETE,savedata);
function savedata (event:Event) {
dataarray = event.target.data.split(/\n/);
dataarray.push(playername);
dataarray.push(playerscore);
var bytes:ByteArray = new ByteArray();
var fileRef:FileReference = new FileReference();
for (var i = 0; i < dataarray.length;i++) {
bytes.writeMultiByte(dataarray[i] + "\n", "iso-8859-1");
}
fileRef.save(bytes,"savedata.txt")
}
Was dies bedeutet nehmen ist alle vorhandenen Daten speichern, drückt er auf ein Array (wo eine Zeile auf Ihrer Datei speichern ist Array Dateneingabe), fügt Ihr entsprechende Daten und schiebt es zurück in die Sicherungsdatei.
(2) Um dies zu laden in, während im Hauptmenü, legen Sie einfach diesen Code in den Rahmen des Hauptmenüs ..
dataloader.load(new URLRequest("savedata.txt"));
dataloader.addEventListener(Event.COMPLETE,loaddata);
function loaddata (event:Event) {
dataarray = event.target.data.split(/\n/);
}
Diese alle vorhandenen Daten in ein Array geladen werden. Was Sie von da an tun, liegt an Ihnen.
Können Sie den letzten Satz klären? Denn das Senden von Partituren via PHP hört sich doch nach "Arbeiten mit dem Internet" an. – joncys