SAS 9.1.3可以用utf8 BOM读取csv文件吗?
问题描述:
我在AIX 5.3中使用SAS 9.1.3SAS 9.1.3可以用utf8 BOM读取csv文件吗?
我必须使用SAS来导入CSV文件。
CSV的第一行是列名。
SAS在日志中报告错误。
然后,我发现CSV文件有3个字符
(这是utf8字节顺序标记)。
在文件的最开始处。
我试着使用:
filename XXX 'XXXXXXXXXX' BOM ;
但是,这是语法错误。
我用BOMFILE替换BOM,仍然是语法错误。
看来SAS 9.1.3无法识别BOM选项。
有没有人有类似的经历?
答
而是导入过程,你可以尝试像数据的步骤如下:
data test;
infile "data.csv" firstobs=2 dlm=','; /* assuming delimiter is a comma */
input /* use Input with $UTF8Xw. informat */
field1 $utf8x3. /* input fields 1 through 3 */
field2 $utf8x10.
field3 $utf8x3.
;
run;
答
SAS可以阅读(至少9.1以上),但你的SAS会话必须与DBCS和编码选项运行组。
-DBCS -encoding UTF-8
这些需要是在sasconfig文件或调用的命令行。通过这些选项,SAS会话的默认编码是Unicode。没有它Unicode选项通过语法检查,但没有效果。
你可以尝试使用encoding = options infile语句,但对于我从来没有工作过的语句。 欲了解一些相关信息,请参阅http://www.phuse.eu/download.aspx?type=cms&docID=3658
尝试runsubmit.com - 这就像StackOverflow,但只适用于SAS。 – 2010-12-27 16:16:44