Hallo,
ich möchte Daten vom lokalen Rechner
mit JavaScript laden da regional oft keine Internetzugang möglich ist. Mit euerem Beispiel Skript
https://blog.homepage-webhilfe.de/Artikel/dateien-vom-pc-mit-hilfe-von-javascript-einlesen/
kann ich die Datei als Text Datei prima fehlerfrei lesen. Wie speicherer ich die gelesene Textdatei zur Verarbeitung in einer Variable?
da läuft bei mir irgendetwas falsch. Wer kann helfen?
Anbei der reichlich kommentierte programmcode.
function OnShowSelectedFile() // Original siehe //https://blog.homepage-webhilfe.de/Artikel/dateien-vom-pc-mit-hilfe-von-javascript-einlesen/
......
// Lesen der Datei als Text starten
oReader.readAsText(aFileList[0]);
var fileContent = oReader.result; // hier mache ich etwas falsch, der inhalt des Textfiles soll in die Variable "fileContent" geschrieben werden
.......
// Weiterverarbeitung funktioniert - Die in die Variable "fileContent" als Text eingelesenen Daten (csv Format, Trennzeichen ; und \n ) in das 2D Array BeeHiveData[][] splitten
var BeeHiveData = [];
// var fileContent = 'Ja; Das; Ist ; Oben; ' + '\n' + 'und; das; ist; mitte;' + '\n' + 'aber;das;ist;unten;' ; // Das ist nur ein Beispieltext zum testen der folgenden Zeilen
var rodArray = fileContent.split('\n'); // Als Text eingelesenen Daten in ein Array splitten (Trennzeichen hier "\n" )
for (var i = 0; i < rodArray.length; i++) { // Über alle Zeilen iterieren
if (rodArray[i].length > 1) { // Nur wenn die Größe einer Zeile > 1 ist (sonst ist in der Zeile leer)
var elementArray = rodArray[i].split(";"); // Zeile am Trennzeichen ";" trennen
elementArray.splice(elementArray.length - 1, 1); // überflüssiges Element am Ende entfernen
BeeHiveData.push(elementArray); // Array der Zeile dem Ergebnis Array hinzufügen -> Ergebnis ist ein 2D Array BeeHiveData[0][0]
}
}
console.log(BeeHiveData); // Ausgabe des 2D Arrays mit den Daten zur Kontrolle des Ergebnisses auf Konsole
}
</script>