Archivio tag: encoding

Conversione codifica di un file (da UTF-8/UTF-16 a cinese GB18030)

200px-Unicode_logo.svg

Mi è arrivato un file direttamente dalla Cina per la traduzione di un sito web. Lì tutto gira in UTF-8 quindi anche il file in questione (caricato dinamicamente via php) deve essere in UTF-8. Come fare?

Per prima cosa bisogna capire con precisione che tipo di encoding ha il file in questione. Mi sono documentato un po’ e per OSX molti dicono che il comando “file -I” non funziona, o meglio non bene. E’ vero: nel mio caso il file cinese aveva codifica GB18030 (Chinese) e il comando “file -I” mi ha restituito erroneamente iso-8859-1:

# file -I lang-cn.php_cn
lang-cn.php_cn: text/x-php; charset=iso-8859-1

Ho cercato sull’App Store e ho trovato l’app ezText la quale mi ha restituito la codifica corretta: GB18030 (Chinese).
A questo punto la stessa App vi permette di effettuare la conversione su una diversa codifica ma anche qui non mi ha convinto fino in fondo. Il passaggio da GB18030 a UTF-8 mi modificava anche i caratteri normali (non solo gli ideogrammi cinesi).
Per questo scopo ho trovato perfetto il comando “iconv” da Terminale, mi è bastato inviare il comando:

iconv -f GB18030 -t UTF-8 nome-file_GB18030 > nome-file_UTF8

Conversione perfetta!