[Java lista] FileNotFoundException holott ottan van az :-)

Andras Suller suller.andras at gmail.com
2009. Jún. 11., Cs, 13:58:52 CEST


2009/6/11 Mariák Kálmán <sirkalmi at gmail.com>:
> Mindegy, hogy kinek minek a problémája nem felelősöket hanem megoldást
> keresek. :-)
> A probléma abból adódik, hogy a Windows cp852-es kódlapot használ így a
> fileneveket is ez alapján írja le. A Solaris meg UTF-8-at használ így a
> fileneveket ezen kódlap alapján adja vissza. Tehát cp852-es kóddal leírt
> szimbólumokat próbál megjeleníteni UTF-8-as kódlappal. A gond az, hogy
> előfordulhat olyan eset amikor a cp852-es kód az UTF-8-as kódtáblán nem
> nyomtatható karakterre mutat így azokat kérdőjellel helyettesíti. Ebben
> az esetben adatvesztés következik be mert ezen kérdőjeles filenevekből
> sehogyan sem állítható vissza az eredeti. Talán, ha a Java-nak meg
> lehetne mondani, hogy annak ellenére, hogy a rendszer UTF-8 locale ra
> van beállítva a filenév kiolvasásakor a cp852-es kódlapot használja de
> csak abban az esetben, ha az UTF-8 -as próbálkozáskor
> FileNotFoundException keletkezik.

Nekem ezt a dolgot megoldja a -Dfile.encoding=iso-8859-2 kapcsoló. Így
krixkraxok helyett normális, ékezetes fájl neveket írt ki a konzolra.

Ha ez nem működik, akkor a LANG mellett az LC_ALL-t is állítsd be
ugyanarra, mint a LANG-ot. Linuxon legalábbis ezt veszi figyelembe,
nem a LANG-ot.

Üdv: psmith


További információk a(z) Javalist levelezőlistáról