Linux Dateinamen Charset Probleme

Status
Nicht offen für weitere Antworten.
G

guenhter

Gast
Hallo,

ich arbeite zurzeit an einem kleinen Programm, dass Informationen von Dateien in einem ausgewählten Ordner einfach ausgibt. Das ist an und für sich auch kein Problem, nur bei Dateien, die in Windows mit Umlauten angelegt wurden. Hier erscheint schon im Dateimanager "Dolphin" nur ein Kästchen statt des Umlautes. Wenn ich im Programm dann

Code:
if (file.exists() == false) {....}

mache, dann kommt er genau bei diesen UmlautDateien in den If-Block rein.

Ich würde jetzt gerne einfach folgendes machen: Kommt er in den If-Block, dann decodiere ich den Dateinamen in ein Format, das dann auch für mich lesbar ist und ändere einfach den alten Dateinamen in dem Neuen um.

Meine Problem dabei ist nur, dass ich eben nicht weiß, mit welchem Charset der Dateiname codiert ist, also folgedessen weiß ich nicht, mit hilfe welchen Charsets ich den Dateinamen decodieren soll.

Kann mir da jemand weiterhelfen?
 

madboy

Top Contributor
Windows verwendet meines Wissens ISO-8859-1(5), während auf den meisten Linux-Distributionen UTF8 voreingestellt ist.
 

thE_29

Top Contributor
Windows verwendet eigentlich dieses windows cp oder? Zumindest bei kyrilischen ist es nicht 5 (5 ist kyrillisch , 1 = latin) sondern windows cp 1251!
 
G

guenhter

Gast
Leider hat es sich mit keinem der genannten Charsets richtig encoden lassen. Hier die Ergebnisse meiner Versuche:

So soll das Lied eigentlich heißen
Code:
Schön.mp3

In meinem Dateimanager sieht es ungefähr so aus (statt den Fragezeichen aber Kästchen)
Code:
Sch??n.mp3

Wenn ich den Namen in ein byte-Array umwaldle kommt das raus.
Code:
83;99;104;-17;-65;-67;110;46;109;112;51;



Nun Das Ergebnis der Umwandlung:
SchпїЅn.mp3 mit windows-1251
Sch�n.mp3 mit ISO-8859-1
SchяПНn.mp3 mit ISO-8859-5

Gibt es sonst eigentlich eine Möglichkeit, das benötigte Charset für einen String mit unbekannter codierung rauszufinden???[/code]
 

thE_29

Top Contributor
Oho, du hast dort anscheinend irgendne UTF Kodierung, weil das ö immer 2 Zeichen lang ist!

Kannst du rausfinden welche UTF Kodierung du hast?
 
G

guenhter

Gast
Halllo,

also ich hab mir den Dateinamen "Sch?n.mp3" (Kästchen statt Fragezeichen) im Debugger noch einmal etwas genauer angschaud und er wird auch noch so dargestellt: "Sch\ufffdn.mp3".
Strings in Java sind standardmäßig sowieso UTF-8 kodiert, und in meinem Kubuntu müsste eigentlich auch UTF-8 sein, da ich nie etwas umgestellt habe (falls das überhaut möglich ist).

Wie bekomm ich jetzt nur aus "Sch\ufffdn.mp3" einen vernünftigen String?
 

ms

Top Contributor
guenther hat gesagt.:
Strings in Java sind standardmäßig sowieso UTF-8 kodiert
Hier steht folgendes:
Every instance of the Java virtual machine has a default charset, which may or may not be one of the standard charsets. The default charset is determined during virtual-machine startup and typically depends upon the locale and charset being used by the underlying operating system.
ms
 
G

guenhter

Gast
So, ich habe jetzt mein Problem mit den Umlauten aus Windows gelöst, aber nicht in meinem Programm, sondern über das Betriebssystem. Ich habe einfach bei dem Mountbefehl für meine FAT-Partition die Option "UTF8" hinzugefügt. Jetzt passen die Umlaute wie sie sollen.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Linux, Java-Version wird nicht erkannt bzw. welche Einstellung fehlt noch? Allgemeine Java-Themen 19
M Eclipse unter Linux Lite Allgemeine Java-Themen 2
M priority scheduling in Linux Allgemeine Java-Themen 3
Killunox MaxHeap Zuweisung unter Linux funktioniert nicht Allgemeine Java-Themen 1
L Super User via Processbuilder (Linux) Allgemeine Java-Themen 3
OSchriever Linux-Programm öffnen Allgemeine Java-Themen 6
OSchriever Programm über Linux-Kommandozeile ausführen Allgemeine Java-Themen 20
J Linux .jar beim Start automatisch ausführen Allgemeine Java-Themen 6
J ASCM - In Linux öffnen Allgemeine Java-Themen 3
L Tesseract-OCR 4.0 unter Linux funktioniert nicht Allgemeine Java-Themen 3
J Sound mit Clip in Linux abspielen Allgemeine Java-Themen 3
K USB infos unter Linux abfragen? Allgemeine Java-Themen 2
N Lizenzensierung von Java Programmen unter Linux Allgemeine Java-Themen 3
P OneWire Java Linux Allgemeine Java-Themen 11
R probleme beim starten von jar unter linux Allgemeine Java-Themen 2
A Linux bash script ausführen Allgemeine Java-Themen 16
C Windows RCP Application unter Linux bauen lassen Allgemeine Java-Themen 3
D jnativehook auf Linux Allgemeine Java-Themen 1
A Linux: Native Library mit Rootrechten ohne Prozess mit sudo zu starten Allgemeine Java-Themen 1
F Linux & NetBeans: Datei in Systemverzeichnis schreiben? Allgemeine Java-Themen 1
E Sonderzeichen nicht setzbar: Großes Problem bei Programmierung unter Linux Mint mit Virtual Box Allgemeine Java-Themen 5
F URI Schema in Linux erstellen? Allgemeine Java-Themen 3
D Problem VLC4J Raspbian(Linux) Allgemeine Java-Themen 0
M Code läuft unter windows aber nicht unter Linux Allgemeine Java-Themen 6
F.S.WhiTeY JDK installieren Linux: Nach Update link auf Java zerschossen Allgemeine Java-Themen 4
M Java auf Linux und Windows Allgemeine Java-Themen 6
D pfad zur jre linux Allgemeine Java-Themen 8
B Ordner öffnen mittels Java in Linux-Umgebung Allgemeine Java-Themen 7
P Eclipse Unter Windows erstelle .jar unter Linux (Ubuntu) funktioniert nicht Allgemeine Java-Themen 5
G Linux/C++/Pthreads auf JVM zugreifen, thread safe? Allgemeine Java-Themen 10
G Runtime.exec beendet Programm unter Linux, wenn Java Programm beendet wird Allgemeine Java-Themen 3
G RXTX native library unter Linux in jar build angeben Allgemeine Java-Themen 4
R Umlautproblem unter Linux Allgemeine Java-Themen 10
Gossi Mit Java auf Linux- & Windowssysteme zugreifen? Allgemeine Java-Themen 4
T Jar File läuft unter Windows aber nicht unter linux Allgemeine Java-Themen 10
Z Probleme bei Stringvergleichen (Windows/Linux) Allgemeine Java-Themen 10
M Linux Rechner per ssh runterfahren mit Java Allgemeine Java-Themen 8
F Process.getInputStream unter Linux Allgemeine Java-Themen 7
J Java programm lässt sich in win7 nach linux install nicht mehr ausführen Allgemeine Java-Themen 18
G Input/Output URLDecoder.decode - Unterschiedliche Ergebnisse Windows / Linux Allgemeine Java-Themen 2
G Java und Syslog (Linux) Allgemeine Java-Themen 3
T Javaprogramm unter Linux auf bestimmten Kern starten/laufen lassen ? Allgemeine Java-Themen 22
D Unix/Linux Benutzer-Authentifikation über Java Allgemeine Java-Themen 3
B JNA, Linux und die Smart Card Allgemeine Java-Themen 2
P Runnable Jar File über Windows ausführbar doch über Linux nicht Allgemeine Java-Themen 8
C RXTX Treiber einbinden für Linux Allgemeine Java-Themen 6
C Datei auslesen wie unter Linux mit "tail -f" Allgemeine Java-Themen 3
E Linux Cups Allgemeine Java-Themen 6
S Verhalten von System.getenv() in Ubuntu / Linux Allgemeine Java-Themen 12
T linux problem mit Desktop.getDesktop().open(..) Allgemeine Java-Themen 5
lordcarlos Runtime exec und mplayer (linux) Allgemeine Java-Themen 11
J dialogys unter linux Allgemeine Java-Themen 4
S Problem beim Drucken auf Netzwerkdrucker unter Linux Allgemeine Java-Themen 9
B Linux: Bash von Java aus aufrufen Allgemeine Java-Themen 10
T System Preferences + LInux (Ubuntu) Allgemeine Java-Themen 8
R Timing-Problem (?) Linux versus Windows Allgemeine Java-Themen 13
F Document öffnen unter Linux Allgemeine Java-Themen 4
F Portzugriffe Java @Linux & Windows? Allgemeine Java-Themen 4
W Deployment unter Linux Allgemeine Java-Themen 17
D Mit Linux mehrere Kommandos in einem Subprozeß Allgemeine Java-Themen 3
E Erfahrung mit RXTX sowie Windows und Linux Allgemeine Java-Themen 9
J Externes Programm starten und stoppen (Linux) Allgemeine Java-Themen 3
B Programm läuft unter Linux, aber nicht unter Windows Allgemeine Java-Themen 3
J UTF-8 Sockets : Windows<->Linux Ein altes Problem Allgemeine Java-Themen 7
S Ausführbare Scriptdatei unter Linux erstellen Allgemeine Java-Themen 6
J Programm unter Linux starten Allgemeine Java-Themen 3
R Jar-File vom Linux Desktop durch ancklicken starten? Allgemeine Java-Themen 5
P Linux port Allgemeine Java-Themen 4
P CLASSPATH LINUX Allgemeine Java-Themen 9
L Programm läßt sich wegen Java unter Linux nicht starten Allgemeine Java-Themen 4
V JAR-File läuft unter Windows und Linux, aber nicht unter OSX Allgemeine Java-Themen 6
M Welches Linux zum Java testen? Allgemeine Java-Themen 5
D linux shell aus java öffnen Allgemeine Java-Themen 5
A Linux-Consolenbefehle über Java ausführen? Allgemeine Java-Themen 2
B Java Applikation incl. dll unter Linux ausführen? Allgemeine Java-Themen 11
G Java Socket langsam unter Linux Allgemeine Java-Themen 21
T *.jar applikationen auf Linux installieren Allgemeine Java-Themen 4
P jdic/Linux Allgemeine Java-Themen 2
Ark Linux: Shell-Skript zum Kompileren und Starten Allgemeine Java-Themen 4
N Linux-Commands über Java Anwendung ausführen Allgemeine Java-Themen 12
M Eigenes Java-Server-Programm unter Linux steuern? Allgemeine Java-Themen 13
P linux + java :/ Allgemeine Java-Themen 11
G Läuft nicht unter Linux oO Allgemeine Java-Themen 10
S Java Entwicklungsumgebungen unter XP und Linux und weitere F Allgemeine Java-Themen 7
W Programm starten unter Linux Allgemeine Java-Themen 10
M Speicherverwaltung unter Linux Allgemeine Java-Themen 7
A Geschwindigkeit Java unter Linux Allgemeine Java-Themen 9
J jdic funktioniert unter Linux nicht Allgemeine Java-Themen 18
S Welche Javaversion ist in meinem Linux? Allgemeine Java-Themen 2
L Native Threads unter Linux? Allgemeine Java-Themen 2
V JVM OutofMemory Linux geht, windows nicht Allgemeine Java-Themen 3
L mit exec() befehl ausführen ( OS X / Linux) Allgemeine Java-Themen 8
B JMF -> Webcam (Linux) Allgemeine Java-Themen 14
B Java 6 unter Ubuntu (Linux) Allgemeine Java-Themen 4
B gibVerzeichnis() unter linux Allgemeine Java-Themen 9
D JMF unter Linux/Windows, nichts funktioniert Allgemeine Java-Themen 3
F Runtime.getRuntime().exec mit Linux und Leerzeichen Allgemeine Java-Themen 3
L javax.comm unter Linux Allgemeine Java-Themen 11
G Zugriff von Windows auf Linux Allgemeine Java-Themen 11
M Wie mit Dateipfaden zwischen Linux und WIndows hantieren? Allgemeine Java-Themen 2

Ähnliche Java Themen

Neue Themen


Oben