我在AIX 5.3中使用SAS 9.1.3
我必须使用SAS导入CSV文件 CSV的第一行是列名 SAS报告日志中的错误。
然后,我发现CSV文件有3个字符
(这是utf8字节顺序标记)
在文件的最开头。
我试图使用:
filename XXX 'XXXXXXXXXX' BOM ;
但是,这是语法错误。
我用BOMFILE替换BOM,仍然是语法错误。
SAS 9.1.3似乎无法识别BOM选项。
有没有人有类似的经历?
答案 0 :(得分:0)
您可以尝试以下数据步骤而不是导入过程:
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;
答案 1 :(得分:0)
SAS可以读取此信息(至少9.1加)但您的SAS会话必须在设置DBCS和编码选项的情况下运行。
-DBCS - 编码UTF-8
这些需要位于sasconfig文件或调用的命令行中。使用这些选项,SAS会话的默认编码为Unicode。没有它,Unicode选项会通过语法检查但不起作用。
您可以尝试使用encoding = options infile语句,但对我来说从未工作过。 有关相关信息,请参阅http://www.phuse.eu/download.aspx?type=cms&docID=3658