Náhrada znaků v TXT v UTF8

Petr Tomasek tomasek na etf.cuni.cz
Sobota Březen 22 14:50:30 CET 2014


On Sat, Mar 22, 2014 at 12:07:27PM +0100, Pavel Troller wrote:
> Zdravím,
>   mám obavu, že to stačit nebude.
>   Chápu-li já správně dotazovatele, ty soubory JSOU v UTF-8, tj. netřeba

Pokud si dobře vzpomínám, enca umí rozpoznat i to, že je to sice
v UTF-8, ale blbě.

P.T.

> je překódovávat a Váš script by patrně zbuchnul na tom, že by chtěl iconv
> z UTF-8 do UTF-8.
>   Problém je, že kdysi kdesi kdosi chybně tyto soubory do UTF-8 převedl.
> Vypadá to, že se domníval, že zdrojové soubory byly v iso-8859-2, avšak
> bohužel ony byly v cp-1250. Tudíž konverze nebyla provedena správně.
>   Možná by bylo tedy možno zkusit zpětný chod.
>   1) Zkonvertit to zpět do kódování, z jakého to bylo převedeno (osobně
> používám pro tento účel recode)
>   recode UTF-8..iso8859-2 <soubor>
>   2) A dále to zkusit správně:
>   recode cp1250..UTF-8 <soubor>
> 
>   Možné je ale i to, že dotyčný předpokládal, že to je v cp1250, ale ono to
> bylo v iso. Tedy pokud toto nepovede k cíli, zaměnil bych kódování v krocích
> 1 a 2 (v 1 použil cp1250 a ve 2 iso8859-2).
>   Zdraví Pavel
>   
> > Proč otrocky? Vypadá to na problém při konvertování do utf-8 a vybraná 
> > špatná kódová strana (neb Microsoft si musel zase ???upravit??? iso normu).
> >
> > Pošlete (krátký) soubor s problémovým řetězcem a dá se to rychle dohromady.
> >
> > Před lety jsem to korigoval již zmíněnou enca a iconv;
> >
> > Tohle je výřez z perlového scriptu
> >
> > 	my $icode = `enca -i "$file"`;
> > 	say "Zdrojové kódování: $icode";
> > 	chomp $icode;
> > 	`iconv -f $icode -t UTF-8 -o "$dest" --verbose "$file"`;
> >
> >
> > takže enca zjistí zdrojové kódování do $icode, odstraní \n z konce a iconv to převede do souboru $dest ze souboru $file
> >
> > Bude to stačit takto?
> >
> > ced
> >
> >
> > Dne 22.3.2014 09:40, Petr Zapadlo napsal(a):
> >> Zdravím,
> >>
> >>
> >> neznám původní sadu, ani to jak soubory vznikly a čím byly konvertované. prostě mám stovky souborů s kodováním UTF8, které
> >> mají vadné znaky ž,š,ť a jejich velké ekvivalenty. Nic víc a nic míň.
> >>
> >> Nějak se s tím poperu, zjišťoval jsem jestli existuje ekvivalent tr, který respektoval UTF8, asi ne, tak to budu muset
> >> udělat otrocky.
> >>
> >> Díky za pomoc a přeji pěkný víkend.
> >>
> >> Petr
> >>
> >>
> >> Dne 22.3.2014 00:36, Milan B. napsal(a):
> >>>
> >>> Jednoduse: Zkonvertovat to nejdriv do te spatne znakove sady,
> >>> tu prohlasit za spravnou a korektne zkonvertovat do utf8.
> >>>
> >>>
> >>> Neopisujte. Tato trivialita, ktora vobec neodpoveda na moju, toboz nie na povodnu otazku, tu uz zaznela:
> >>> http://list.hw.cz/pipermail/hw-list/2014-March/454140.html
> >>>
> >>>
> >>>>
> >>>> p.t.
> >>>>
> >>>>
> >>>> _______________________________________________
> >>>> HW-list mailing list  -  sponsored by www.HW.cz
> >>>> Hw-list at list.hw.cz
> >>>> http://list.hw.cz/mailman/listinfo/hw-list
> >>>
> >>> _______________________________________________
> >>> HW-list mailing list  -  sponsored by www.HW.cz
> >>> Hw-list at list.hw.cz
> >>> http://list.hw.cz/mailman/listinfo/hw-list
> >>
> >> _______________________________________________
> >> HW-list mailing list  -  sponsored by www.HW.cz
> >> Hw-list at list.hw.cz
> >> http://list.hw.cz/mailman/listinfo/hw-list
> > _______________________________________________
> > HW-list mailing list  -  sponsored by www.HW.cz
> > Hw-list at list.hw.cz
> > http://list.hw.cz/mailman/listinfo/hw-list
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list at list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list

-- 
Petr Tomasek <http://www.etf.cuni.cz/~tomasek>
Jabber: butrus at jabbim.cz



Další informace o konferenci Hw-list