Код японского языка COBOL на мэйнфрейме IBM в Shift-JIS; представляли после переноса на ПК как?

У нас есть японский клиент с исходным кодом на COBOL на мэйнфрейме. Он утверждает, что код мэйнфрейма представлен в Shift-JIS2 (и мы думаем, что хорошо это понимаем). Когда этот код передается на ПК, какая кодировка используется чаще всего? Мы отправили ему программу для обработки этого кода COBOL, и, похоже, она задыхается. Заказчик не дает нам код напрямую, поэтому экспериментировать сложно. Его эксперименты, кажется, указывают на UTF-8; Я предполагаю, что японские символы, кодируемые в Shift-JIS2, соответственно конвертируются в эквиваленты Unicode. У кого-нибудь есть здесь опыт?

РЕДАКТИРОВАТЬ: Я думаю, мы раскрыли нашу тайну. Клиент (да!) Использует CP-932 («ShiftJIS») на ПК, но его программа на COBOL имеет японские символы в идентификаторах, и поэтому наш инструмент задыхается.

РЕДАКТИРОВАТЬ: Продолжение: немного больше сюрприза. SHIFT-JIS часто кодирует то, что мы думаем как текст ASCII, как так называемые символы «ПОЛНОЙ ШИРИНЫ», которые занимают то же экранное пространство, что и восточноазиатский иероглиф; обычные символы ASCII действуют как полуширины. Итак, есть ПОЛНАЯ ШИРИНА «A», «B», ... «Z», а также ПОЛНАЯ ШИРИНА «-». Очевидно, чтобы обрабатывать японский COBOL, наш синтаксический анализатор COBOL должен принимать не только западный код ASCII, но и его эквиваленты FULLWIDTH, особенно. буквы ПОЛНОЙ ШИРИНЫ и, что удивительно, ДЕФИС ПОЛНОЙ ШИРИНЫ, используемые для разделения «букв» в идентификаторе COBOL.

РЕДАКТИРОВАТЬ: IBM Enterprise COBOL позволяет использовать символы DBCS в идентификаторах. Ой!


person Ira Baxter    schedule 21.08.2009    source источник
comment
Некоторые инструменты ftp, такие как FFFTP, будут выполнять преобразование кодировки за вас, поэтому убедитесь, что вы указали метод передачи. forest.impress.co.jp/lib/inet/ servernt / ftp / ffftp.html   -  person monkut    schedule 21.08.2009
comment
И если бы это было так, что бы он сделал по умолчанию?   -  person Ira Baxter    schedule 21.08.2009
comment
Примечание. CP-932 является расширением Shift-JIS (часто используется в Windows). Не используйте Shift-JIS, когда имеется в виду CP-932, потому что некоторые символы не будут правильно закодированы.   -  person Gavin Brock    schedule 11.08.2010
comment
Это почти семь лет спустя. Все еще проблема? Без доступа к источнику вы снимаете в темноте. Нанять японского программиста на COBOL на короткое время может быть похоже на ношение очков ночного видения, потому что, если клиент делает что-то обычным для Японии способом (а парень COBOL знает нормальный способ), вам повезет. Даже глаголы не обязательно должны быть оригинальными, хотя я не уверен, могут ли они быть DBCS. Я подозреваю, что с некоторыми настройками они могли, но я не пробовал.   -  person Bill Woodger    schedule 16.03.2016
comment
IBM и Microsoft приложили усилия для предоставления Windows DBCS, эквивалентной IBM. Каждая из соответствующих кодовых страниц IBM имеет эквивалент для Windows. Насколько мне известно, для японских программ COBOL нормально использовать глаголы на английском языке и все идентификаторы и литералы, где это возможно, на японском языке. Кажется, он включает широкие латинские символы.   -  person Bill Woodger    schedule 17.03.2016


Ответы (1)


В Японии все еще широко используются три кодировки: EUC-JP, ISO-2022-JP и Shift-JIS.

ISO-2022-JP обычно используется для электронной почты. Пока вы увидите EUC-JP на машинах Unix. Лично я не имел дела ни с чем, кроме Shift-JIS. (И мэйнфреймы.)

person wm_eddie    schedule 21.08.2009
comment
Вы получили кивок за то, что сказали очевидное, во что, я думаю, мы не поверили: - { - person Ira Baxter; 21.08.2009
comment
См. Правки в моем исходном вопросе, чтобы узнать о сложностях, связанных с FULLWIDTH символами. - person Ira Baxter; 24.08.2009