Wie kann ich den HTML Audio Player-Pfad korrigieren?
Hier ein Snippet der JSON-Daten:
"AllSongs": [{
"Interpret": "2Raumwohnung",
"Title": "Mit viel Glück",
"path": "D:/Songs/2Raumwohnung/2Raumwohnung - Mit viel Glück.mp3"
}, {
"Interpret": "Angelo Branduardi & Teresa Salgueiro",
"Title": "nelle paludi di venezia francesco si fermò per pregare e tutto tacque",
"path": "D:/Songs/Angelo Branduardi & Teresa Salgueiro/Angelo Branduardi & Teresa Salgueiro - nelle paludi di venezia francesco si fermò per pregare e tutto tacque.mp3"
}]
Mit solchen Zuweisungen
AudioPlayer.src = DB.AllSongs[0].path;
lade ich das Lied.
Dies funktioniert mit allen Pfaden perfekt, auch denen mit Leerzeichen im Pfad.
Aber mit Sonderzeichen: äöü, französische Zeichen, etc. wird der Pfad nicht gefunden. Das Lied lädt nicht. Der Debugger wirft einen Fehler auf GET.
Auch im Debugger wird schon mit dem "?" angedeutet, dass hier Handlungsbedarf ist.
Plan A) hier wäre ein Tipp hilfreich.
Beim Einlesen muss ich mich wohl um diese Zeichen kümmern. Aber wie?
Muss ich nur am Header etwas ergänzen?
<html lang="de-DE">
<head>
<meta charset="utf-8">
Plan B) Ich benenne alles um, sodass die Pfade direkt ISO sind. Das wäre aber bitter, wegen der Lesbarkeit vieler Titel, besonders anderer Sprachen.
Die Google-Ergebnisse haben mich bislang nicht weitergebracht. ☹
2 Antworten
Hey,
liegen die Daten in einer Datei? Dann guck mal z.B. in Notepad++ ob die Datei auch entsprechend in UTF-8 kodiert ist.
https://notepad-plus-plus.org/downloads/
Ich wünsch Dir viel Erfolg mit Deinem Projekt!
habe in NotePad++ "Convert to UFT-8" durchgeführt. Jetzt geht es :-))))
Na sehr schön - ein träumchen. Ich freu mich, dass ich helfen konnte.
Stelle zum einen einmal sicher, dass die JSON-Datei selbst eine UTF-8-Zeichenkodierung nutzt und gib zum anderen via meta-Tag UTF-8 als Zeichenkodierung für deine Webseite an.
Für Ersteres sollte es genügen, die Datei in einem Texteditor zu öffnen und neu abzuspeichern. Im Speicherdialog findest du eine Option, in der du die Kodierung festlegen kannst.
Leerzeichen im URL-Pfad lassen sich übrigens via %20 maskieren.
Beispiel:
https://some-page.de/file%20with%20spaces%20in%20name.txt
Werde mich in Zukunft erst um die richtigen Formate, dann die Funktion kümmern.
Habe in NotePad++ "Convert to UFT-8" durchgeführt. Jetzt geht es :-))))
Danke. Eigentlich funktionert schon alles. Endlich ein Player, der dies macht was ich will ;-)
Nur diese -Sonder- Pfade wollen noch nicht. Ich prüfe dies gleich mal.