У меня есть текст, который мне нужно перевести на японский язык.

Translate text, webpage, or document

Google Translate возвращает строку как:

翻訳テキスト、 Webページ、またはドキュメント

Когда я пишу этот текст в файл (ja.po), он выглядит так:

–|–óƒeƒLƒXƒgA Webƒy[ƒWA‚Ü‚½‚̓hƒLƒ…ƒƒ“ƒg

В чем будет ошибка?

Я использую poeditor.exe для просмотра файла. В настоящее время я не использую никаких функций кодирования.

for(/*extracting from the trnslated string array*/)
{
    $pattern = "/msgid \"".preg_quote($id, '/')."\"(\r?\n)msgstr \"\"/";
    $string = str_replace('"', '\"', $string);
    $replacement = "msgid \"$id\"\nmsgstr \"". $string . "\"";
    $res = preg_replace($pattern, $replacement, $con);
    $con = $res;
}
file_put_contents("ja.po", $con);
0
coderex 27 Июл 2009 в 10:40
Вы открываете файл в редакторе, поддерживающем UTF-8? И / или со шрифтом, поддерживающим UTF-8? Если да, то как вы записываете строку (которая выглядит нормально) в файл (которая выглядит не так хорошо)?
 – 
Pascal MARTIN
27 Июл 2009 в 10:44

2 ответа

Лучший ответ

Как вы получаете строку из Google и как ее пишете? Я полагаю, что где-то по пути он конвертируется из UTF8 в latin1. Если вы можете выяснить, где это происходит, используйте mb_convert_encoding < / a>, чтобы исправить это.

Кстати, японский переводчик очень плохой. ;)

1
deceze 27 Июл 2009 в 10:45