Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Hallo im Forum,
ich lade eine Text Datei in eine TextArea. Die Datei hat ca. 300 Zeilen, von denen die meisten aus Zahlen bestehen.
Ich möchte jetzt nur die Zahlen in die TextArea bringen und alle ASCII Zeichen nicht übernehmen.
Vielleicht mit is.integer() oder ähnlichen, aber mein Jave ist praktisch nicht vorhanden.
Das Java Script zum Darstellen der hochgeladenen Datei sieht so aus:
Java:
let input = document.querySelector('input')
let textarea = document.querySelector('textarea')
// This event listener has been implemented to identify a
// Change in the input section of the html code
// It will be triggered when a file is chosen.
input.addEventListener('change', () => {
let files = input.files;
if (files.length == 0) return;
/* If any further modifications have to be made on the
Extracted text. The text can be accessed using the
file variable. But since this is const, it is a read
only variable, hence immutable. To make any changes,
changing const to var, here and In the reader.onload
function would be advisible */
const file = files[0];
let reader = new FileReader();
reader.onload = (e) => {
const file = e.target.result;
// This is a regular expression to identify carriage
// Returns and line breaks
const lines = file.split(/\r\n|\n/);
textarea.value = lines.join('\n');
};
reader.onerror = (e) => alert(e.target.error.name);
reader.readAsText(file);
});
Für Eure Vorschläge bin ich sehr dankbar.
Grüsse aus Duisburg, Klaus
Hier gibt's zwar irgendwo auch eine Ecke für JavaScript, aber da schreiben auch nur die, die Ahnung von JS haben, das ist nur ein Bruchteil der Foristen hier.
Wie sieht so eine Zeile der Textdatei aus? Besteht diese aus mehreren Zeichen? Besteht eine Zeile aus beidem, also Zahlen und Buchstaben? Sind die Zahlen immer ganze Zahlen?
Wie sieht so eine Zeile der Textdatei aus? Besteht diese aus mehreren Zeichen? Besteht eine Zeile aus beidem, also Zahlen und Buchstaben? Sind die Zahlen immer ganze Zahlen?
Hier gibt's zwar irgendwo auch eine Ecke für JavaScript, aber da schreiben auch nur die, die Ahnung von JS haben, das ist nur ein Bruchteil der Foristen hier.
Hi Oneixee5 again. Ich habe deine Zeilen vor reader.onload .... eingefügt. Kein Ergebnis.
Vielleicht kann man jede Zeile in einen Array einfügen und diesen wieder selektiv auslesen ....
Hallo Mihe7, danke, das war perfekt, ich muss mich nur noch mit "split(/\r\n|\n/).filter(isNumeric)" zur Textformatierung beschäftigen.
Der code lautet jetzt:
Javascript:
const file = files[0];
let reader = new FileReader();
function isNumeric(n) {
return !isNaN(parseFloat(n)) && isFinite(n);
}
reader.onload = (e) => {
const file = e.target.result;
// This is a regular expression to identify carriage
// Returns and line breaks
// const lines = file.split(/\r\n|\n/).filter(l => l.match(/^\d+$/));
//const lines = file.split(/\r\n|\n/);
const lines = file.split(/\r\n|\n/).filter(isNumeric);
textarea.value = lines.join('\n');
};
reader.onerror = (e) => alert(e.target.error.name);
reader.readAsText(file);
});
Das Ergebnis: siehe Anhang.
Es fehlt jetzt nur noch die "spaces" rauszunehmen, aber ich denke, das kriege ich noch alleine hin ....
Vielen Dank erstmal für die gute Aufnahme im Forum und das mein Mangel an sequenziellen logischem Denken nicht mit Häme bedacht wird ...
Hier gibt's zwar irgendwo auch eine Ecke für JavaScript, aber da schreiben auch nur die, die Ahnung von JS haben, das ist nur ein Bruchteil der Foristen hier.
Java ist eine OOP-Programmiersprache, während JavaScript eine OOP-Skriptingsprache ist. Java erstellt Anwendungen, die auf einem virtuellen Rechner oder Browser ausgeführt werden, während JavaScript-Code nur auf einem Browser ausgeführt wird.
Java ist eine OOP-Programmiersprache, während JavaScript eine OOP-Skriptingsprache ist. Java erstellt Anwendungen, die auf einem virtuellen Rechner oder Browser ausgeführt werden, während JavaScript-Code nur auf einem Browser ausgeführt wird.
Das ist so auch nicht wirklich 10% korrekt. JavaScript ist nicht auf Browser beschränkt. Alles, was es braucht, ist eine Engine, die es lädt und ausführt. Und da gibt es viele Lösungen unabhängig von Browsern. NodeJs wäre da als ein prominentes Beispiel zu nennen.