Autor | Zpráva | ||
---|---|---|---|
mad_mazel Profil * |
#1 · Zasláno: 3. 2. 2015, 12:18:15
Ahoj,
mám dotaz, který sem možná úplně nepatří, ale vhodnější sekci jsem tu nenašel. Dotaz zní takto: obsahují textové soubory (nebo třeba CSV soubory) nějakou "hlavičku", v které by bylo něco uloženo, např. znaková sada použitá v daném souboru? |
||
juriad Profil |
#2 · Zasláno: 3. 2. 2015, 12:23:18
Ne. Kódování textového souboru je určeno externě (uživatel nastaví) nebo hádáním podle četností obsažených znaků.
|
||
Trejpa Profil |
#3 · Zasláno: 3. 2. 2015, 12:47:29
mad_mazel:
Různé soubory mohou mít od tvůrců jejich specifikace jedno konkrétní kódování určeno de jure, takže nemusí nic poznávat, mají to dané. Další možností rozpoznání kódování jsou identifikační Byty (BOM) u kódování UTF (8, 16BE, 16LE, 32), které se mohou vyskytnout pouze na začátku souboru a cílová zařízení s nimi obvykle počítají. Jiná kódování se takto ale jednoduše určit nedají. |
||
mad_mazel Profil * |
#4 · Zasláno: 3. 2. 2015, 13:10:07
Aha, díky, toho jsem se obával. Importuju totiž soubor ve formátu TXT a databáze ho chce v UTF8. Jenže já nevím, v jakém kódování je text uložen, takže ho nemám jak převést do UTF8. Takže jediná možnost předpokládám je - zeptat se toho, kdo ten TXT soubor vytvářel.
Ještě jednou díky. |
||
Trejpa Profil |
#5 · Zasláno: 3. 2. 2015, 13:38:01
mad_mazel:
Určit kódování můžeš i sám. Pokud soubor obsahuje třeba česká slova, tak ho můžeš otevřít ve webovém prohlížeči, ten obvykle kódování dost často pozná sám (v menu prohlížeče Zobrazit > Kódování || Zobrazení > Znaková sada). Když to nepozná, můžeš to metodou pokus-omyl vyzkoušet měnit. Také textové editory, třeba MS Word a LibreOffice Writer, když to samy nepoznají, tak ti dají na výběr s náhledem, jak bude výsledek vypadat. Writer, co si pamatuji, obsahoval i poměrně obstarožní znakové sady z DOSu. |
||
mad_mazel Profil * |
#6 · Zasláno: 3. 2. 2015, 13:58:42
Trejpa:
Prohlížeč mi hlásí windows-1252, ale přesto se tam zobrazují paznaky. Když použiju linuxí utilitu file, tak ta mi hlásí charset=unknown-8bit Zkusil jsem zkonvertování z pár běžných kodování, ale pokaždé to zobrazuje v daných místech paznaky. Je to tedy jakési podivuhodné, radši se zeptám autora, snad mi to bude schopen říci. |
||
juriad Profil |
#7 · Zasláno: 3. 2. 2015, 14:01:24
Můžeš ten soubor prohnat utilitou enca, který slouží k odhadu kódování. A nebo ho zobraz ve webovém prohlížeči a měň kódování (v nabídce prohlížeče) dokud se nezačne zobrazovat správně.
|
||
_es Profil |
#8 · Zasláno: 3. 2. 2015, 14:42:09
mad_mazel:
„Prohlížeč mi hlásí windows-1252, ale přesto se tam zobrazují paznaky.“ Nemá to byť Windows-1250? To je určené na češtinu a slovenčinu. |
||
mad_mazel Profil * |
#9 · Zasláno: 3. 2. 2015, 14:43:19
juriad:
enca píše Unrecognized encoding Podle mě se tam ty paznaky dostávají nějak omylem. už jsem zkusil x možností, ale žádný tool/editor/whatever kódování nerozpoznal. Bude to tedy asi nějaký bastl / nějakým způsobem zprasený výstup do toho souboru. |
||
_es Profil |
#10 · Zasláno: 3. 2. 2015, 14:50:28
[#9] mad_mazel:
Tá utilita ale asi nebude nejaký zázračný veštiaci nástroj. Ak ide o nejaké 8bitové kódovanie, tak sa nemá veľmi čoho „chytiť“. Najistejšie bude manuálne meniť kódovanie a zisťovať, kedy sa text zobrazí správne. |
||
Časová prodleva: 9 let
|
0