将泰语字符输入 SAS
Getting Thai Character into SAS
我目前有一个包含泰文字符的 xlsx 文件,它在 excel 中正确显示。
然而,当我在 SAS EG 4.3 中导入此文件时(也在 5.1 中尝试过),泰文字符显示为“???”
这是相同的示例代码
DATA WORK.pthai;
LENGTH F1 ;
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;
我也试过各种编码,我也遇到了一个错误,说不能从 utf-16le 转换到 wlatin1。
有什么方法可以让这个字符显示在 SAS 表中?
我相信您的 SAS 会话必须使用正确的编码。如果您在与 sas.exe 文件相同的目录中打开 sasv9.cfg 文件,您将看到以下行:
-config "C:\Program Files\SASHome\SASFoundation.4\nls\en\sasv9.cfg"
将 "en" 更改为 "u8" 并重新打开 SAS 并导入文件。
总的来说,留在u8不是一个好习惯,因为它会阻止其他用户打开utf-8编码的SAS数据集。
我目前有一个包含泰文字符的 xlsx 文件,它在 excel 中正确显示。
然而,当我在 SAS EG 4.3 中导入此文件时(也在 5.1 中尝试过),泰文字符显示为“???”
这是相同的示例代码
DATA WORK.pthai;
LENGTH F1 ;
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;
我也试过各种编码,我也遇到了一个错误,说不能从 utf-16le 转换到 wlatin1。
有什么方法可以让这个字符显示在 SAS 表中?
我相信您的 SAS 会话必须使用正确的编码。如果您在与 sas.exe 文件相同的目录中打开 sasv9.cfg 文件,您将看到以下行:
-config "C:\Program Files\SASHome\SASFoundation.4\nls\en\sasv9.cfg"
将 "en" 更改为 "u8" 并重新打开 SAS 并导入文件。
总的来说,留在u8不是一个好习惯,因为它会阻止其他用户打开utf-8编码的SAS数据集。