Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Nástroj pro konverzi textových souborů

Zdar,
hledam program, ktery by mi zkonvertoval textove soubory v UTF-8 na kodovani CP1250.

Naschval jsem to zvyraznil a jeste jednou k tomu, opravdu potrebuju mit vystup v CP1250. Zduraznuju to proto, ze ani Google tohle neumi a pokousel se mi podstrcit opak, teda prevod do UTF-8, ale to nechci, to bych zvladl i bez Googlu.

Mam proste programek, ktery potrebuju pouzit, ale on umi otevirat jen CP1250.

Program muze byt psany i pro linux, bylo by to vyhodou, ale kdyz ne, pouziju Wine, takze ani program pro Windows neni problem.

To dulezite je, aby ten program umel idealne automaticky zkonvertovat vic souboru nebo aby to slo nejak jednoduse. Ja na tohle znam jedinej program a to PSPad. Jenze tam je to hrozne uzivatelsky neprivetivy, neni tam nastroj pro hromadnej prevod a ani neumi klavesovy zkratky, takze se musi do menu a vybirat mysi a pri zamyslenem prevodu asi stovky textaku bych to delal nekolik hodin.

Nezna nekdo nejakou lepsi alternativu?

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
www.qwerty.cz www.motobit.com
MulishA 15.01.2017 12:44
MulishA
Ta prvni stranka ten iconv nefunguje, placa to nesmysly, ze "nepovolena vstupni sekvence". Ta druha…
RedMaX 15.01.2017 13:03
RedMaX
Ty mas Linux? Proc tedy nepouzijes primo iconv? iconv
Jan Fiala 15.01.2017 13:38
Jan Fiala
Zdrojovy soubor aaaa.srt je v UTF-8 iconv -f UTF-8 -t CP1250 "aaaa.srt" iconv: nepovolená vstupní s…
RedMaX 15.01.2017 15:14
RedMaX
Klávesové zkratky asi ne, vzhledem k tomu, co zamýšlím s kódováním, ale můžu rozšířit skriptování o… nový
Jan Fiala 15.01.2017 17:35
Jan Fiala
iconv normálne funguje, a je aj pre Windows: http://gnuwin32.sourceforge.net/packages/libiconv. htm…
čitateľ 15.01.2017 17:17
čitateľ
iconv -f UTF-8 -t CP1250 "aaaa.srt" iconv: nepovolená vstupní sekvence na pozici 0 Co tam teda je s…
RedMaX 15.01.2017 17:21
RedMaX
napísané je to dobre, len by som doplnil: iconv -f UTF-8 -t CP1250 < vstup.txt > vystup.txt neviem,… nový
čitateľ 15.01.2017 17:28
čitateľ
ešte by som doplnil, možno máš nejakú starú verziu iconv, mne to žerie utf8 s aj bez BOM, ale treba… nový
čitateľ 15.01.2017 17:35
čitateľ
Není tam náhodou na začátku BOM? To jsou identifikační bajty pro UTF-8 kódování? Asi ano. Tady řeší… nový
Jan Fiala 15.01.2017 17:33
Jan Fiala
funguje to s BOM aj bez, je pravda že v minulosti bol BOM štandard, tak ho tam môže niekto očakávať. nový
čitateľ 15.01.2017 17:36
čitateľ
Diky nastuduju to teda. Nevim, jestli je vstupni soubor UTF-8, vychazel jsem z toho, ze ho ten prog… nový
RedMaX 15.01.2017 17:37
RedMaX
Myslím že PsPad ti spoľahlivo povie aké kódovanie tam je, ak nie ten tak Notepad++ určite, Takisto v… nový
čitateľ 15.01.2017 17:40
čitateľ
Dikes vsem, vyreseno. iconv to resi. Prvni problem byla spatna syntaxe prikazu iconv, je potreba j… poslední
RedMaX 15.01.2017 18:43
RedMaX

Ta prvni stranka ten iconv nefunguje, placa to nesmysly, ze "nepovolena vstupni sekvence".

Ta druha stranka je na nic, dotaz nebyl jak to udelat, ale jak to udelat rychleji nez v PsPadu a to urcite rychlejsi online konvertorem neni.

Zdrojovy soubor aaaa.srt je v UTF-8

iconv -f UTF-8 -t CP1250 "aaaa.srt"
iconv: nepovolená vstupní sekvence na pozici 0

Obracene to funguje, kdyz chci neco prevest z CP1250 na UTF-8, takze jsem usoudil, ze to opak z UTF-8 na CP1250 neumi.

---

Ze jsem tak smelej, neudelal bys, az budes mit nekdy cas, do PsPadu editor klavesovych zkratek nebo nepridelil kodovanim z menu format nejake klavesove zkratky?

iconv -f UTF-8 -t CP1250 "aaaa.srt"
iconv: nepovolená vstupní sekvence na pozici 0

Co tam teda je spatne?

Je ten prikaz dobre? Jestli ano, tak zkusim nejaky jiny UTF-8, protoze nechapu co mu tam vadi.

Není tam náhodou na začátku BOM? To jsou identifikační bajty pro UTF-8 kódování? Asi ano.
Tady řeší něco podobného a docela se to komplikuje...
http://unix.stackexchange.com/questions/312655/why -cant-i-convert-a-utf-8-to-ms-ansi-using-iconv

Na konci je to, co bys mohl použít:

With some iconv implementations, you can also use:

iconv -t windows-1252//translit < input
//translit resorts to approximations when the text cannot be faithfully translated. In that case, it just removes the U+FEFF character.

Diky nastuduju to teda.

Nevim, jestli je vstupni soubor UTF-8, vychazel jsem z toho, ze ho ten programek nebral a on UTF-8 nebere a z toho, ze PsPad psal, ze to je UTF-8.

Zkusil jsem v PsPadu vytvorit soubor UTF-8 a kdyz to prozenu pres iconv, tak k zadne chybe nedojde, ale PsPad nasledne pise, ze je to furt UTF-8. :-/

Dikes vsem, vyreseno.

iconv to resi.

Prvni problem byla spatna syntaxe prikazu iconv, je potreba jak psal citatel:

iconv -f UTF-8 -t CP1250 < "aaaa.srt" >  "bbbb.txt"

A druha vec, ze z nejakeho duvodu, u toho vstupniho souboru, ikdyz byl UTF-8, tak to neslo. PsPad ho videl jako UTF-8 a Notepad++ jako UTF-8-BOM.

Asi s tim BOM, nevim teda co to je, je nejaky problem, protoze moje UTF-8 soubory hlasil Notepad++ jen jako UTF-8 a ty uz ted sly zkonvertovat dobre.

Pak jsem teda koukal na ten iconv a nasel parametr -c, ktery preskakuje chyby.

Takze takhle uz to beha i s tim souborem, co jsem potreboval:

iconv -c -f UTF-8 -t CP1250 < "aaaa.srt" >  "bbbb.txt"

Dopsat tomu nejakou automatizaci uz bude hracka. :-)

Zpět do poradny Odpovědět na původní otázku Nahoru