Получение тайского персонажа в SAS

В настоящее время у меня есть файл xlsx с тайскими символами в нем, который правильно отображается в Excel.

тайский символ отображается в Excel

Однако, когда я импортирую этот файл в SAS EG 4.3 (также пробовал в 5.1), тайские символы отображаются как "???"

После импорта в САС

Вот пример кода для того же

DATA WORK.pthai;
LENGTH F1 $4 ;
FORMAT F1 $UTF8X4. ;
INFORMAT F1 $UTF8X4. ;
INFILE 'C:\Users\rohit_000\AppData\Local\Temp\SEG12960\pthai-507bc48108424b79810743ea724b0861.txt'
    LRECL=4
    ENCODING="WLATIN1"
    TERMSTR=CRLF
    DLM='7F'x
    MISSOVER
    DSD ;
INPUT F1 : $UTF8X4. ;
RUN;

Я также пробовал все виды кодирования, и я также столкнулся с ошибкой, говорящей, что не может перейти в wlatin1 из utf-16le.

Есть ли способ, как я могу получить этот символ для отображения в таблицах SAS?

1 ответ

Решение

Я считаю, что ваша сессия SAS должна использовать правильную кодировку. Если вы откроете файл sasv9.cfg в том же каталоге, что и ваш файл sas.exe, вы увидите следующую строку:

-config "C:\Program Files\SASHome\SASFoundation\9.4\nls\en\sasv9.cfg"

измените "en" на "u8" и заново откройте SAS и импортируйте файл.

В общем, оставаться в u8 нехорошо, так как это может помешать другим пользователям открывать наборы данных SAS с кодировкой utf-8.

Другие вопросы по тегам