Frage

Ich habe eine PHP-basierte Website bekommt, wo wir die Benutzer erlauben, eine durch Kommata getrennte Textdatei mit Daten, die von einigen serverseitige Skripte importiert werden hochzuladen. Aber manchmal müssen wir die Spaltenreihenfolge der Daten anzupassen, die hochgeladen werden, und es wäre sehr hilfreich, wenn wir die Spalten in der CSV-Datei identifizieren konnten, bevor die Upload stattfindet.

Die einzige Art, wie ich mich vorstellen kann lokale Datei zugreifen I / O mit einer Java-Plugin oder einem eingebetteten Flash-Skript, und ich würde viel letzteres bevorzugen. Gibt es eine Möglichkeit in Flash eine Textdatei auf der lokalen Festplatte zu wählen, und dann Actionscript verwenden, um zu prüfen nur die erste Zeile (die mit den Spaltenüberschriften entspricht, in diesem Beispiel)?

Manchmal können diese Dateien> 100 MB sein, so das Ganze in den Speicher geladen und dann wäre nicht effizient wahrscheinlich alle, aber die erste Zeile werfen arbeiten, so frage ich mich, ob es Syntax in Actionscript, die Menge an zu begrenzen, Daten lesen zu einer Zeit, in.

War es hilfreich?

Lösung

Flash-Filme haben keinen Zugriff auf das lokale Dateisystem, mit Ausnahme eines Datei-Upload auf den Server zu tun.

Ich denke, Ihre Optionen sind:

  1. Prozess die Klasse auf der Clientseite mit Java (triviale), ein Applet. Doch wie Sie zu Recht der Benutzer geltend machen müßte Berechtigungen für das Applet gewähren.
  2. Geben Sie eine kleine Seite Anwendungs-Client geschrieben mit Adobe Air, die Dateisystem-API .

Andere Tipps

Könnten Sie nicht nur PHP verwenden, um die erste Zeile Ihrer CSV-Datei zu packen und füttern dann die Datenzeile zu blinken?

konnte ich hier völlig falsch sein, aber es sieht aus wie die Person, diese Frage hat sich etwas getan Similiar in diesem Sinne mit ihren PHP-Code

PHP mit der ersten Zeile einer CSV-Datei zu übernehmen und eine MySQL-Tabelle mit den Daten

Die aktuelle Version des Flash-Players ist nur in der Lage, eine Datei zum Hochladen auf einen Server auszuwählen, erfordern die gesamte Verarbeitung Server-Seite zu sein. Die nächste Version des Players jedoch Flash 10 können, ohne dass die Hin- und Rückfahrt lokale Dateien lesen an einen Server.

Ich habe nicht diese Funktionalität selbst (noch) nicht verwendet, so ist mir nicht sicher, ob es möglich, nur einen Teil der Datei zu lesen, aber das ist immer weniger ein Problem, wenn es all lokalen ist.

Flash 10 ist zur Zeit in einer Art von Pre-Release Beta, aber es wird ausrollen bald denke ich.

EDIT: Bald in der Tat, gerade gesehen, dies in meinem Feedreader

Flash Player 10, die aktuelle Lieferversion (nur vor 2 Tagen veröffentlicht), können Sie lokale Dateien zugreifen zu können. Sie können ein Beispiel finden Sie hier:

scroll top