On Friday 18 of November 2005 18:17, Ing. Radek Žuja wrote:
> Martin Kuba napsal(a):
> > Ing. Radek Žuja wrote:
> >> Dobrý den.
> >> Mám následující problém.
> >> Potřebuji otevřít v JAVA aplikaci soubor jehož cesta je uložena v
> >> databázi a je tam uložena v codepage 1250. Bohužel jsou v ní i háčky
> >> a čárky.
> >> Na serveru, kde běží tako aplikace na default code page English.
> >> Při zavolání kódu
> >> File _f = new File("cesta");
> >> mi to padne na FileNotFoundExecption.
> >> Pokud na serveru nastavím defaultCodePage na czech pak jede vše bez
> >> problému. Nicméně takhle to nastavit nemůžu.
> >> Můžete mi někdo prosím poradit co s tím
> >
> > Obavam se, ze jedine korektni reseni je nastavit to default code page
> > na Czech.
> >
> > Pokud to nelze, a mate jistotu, ze code page bude English,
> > tak by mela fungovat tahle magie:
> >
> > String soubor = rs.getString(1);
> > ...
> > File f = new File(new
> > String(soubor.getBytes("windows-1250"),"iso-8859-1");
> >
> > tj. z retezce to udela Cp1250 bajty, ty to prohlasi za iso-8859-1
> > bajty, z nich to udela retezec, takze kdyz File pak bude
> > zpetne vytvaret bajty se jmenem souboru, dostane ty Cp1250.
> >
> > Ale je to vyhaneni certa dablem :-)
> >
> > Makub
>
> Děkuju za radu.
> Došel jsem ke stejnému názoru.
> Tyto problémy jsem nečekal
> Radek ŽujaMozna by stalo za zamysleni, jestli opravdu potrebujete na serveru vytvaret soubory s tak perverznimi vecmi jako je diakritika. Momentalne CEO Linspire (drive Lindows) letel do Jizni Koreje, aby tam zaloboval za Linspire, protoze Jihokorejska vlada pozaduej po Mrkvosoftech, aby MS OS umel korejske nativni filesystem code pages, takze je videt, ze jste narazil na mozna prilis velkeho dabla. Sice nepredpokladam, ze budete mit nazvy souboru v big5 nebo jinem zvrhlem kodovani, ale moc bych Vam doporucoval, pokud to neni nutne, zavest jednoduche pravidlo: nazvy souboru odpovidaji definici PATH v URL. A pokud nekdo chce neco perverzniho, tak si to ulozte do DB jako metainformace, ale na serveru si to ukladejte v ASCII (klidne zabase64kovane, at nemate potize s generovanim). -- Oto 'tapik' Buchta, [EMAIL PROTECTED] Senior Engineer, Systinet Corp, http://www.systinet.com
