SAS 9.1.3可以用utf8 BOM读取csv文件吗?

时间:2010-12-23 15:17:51

标签: sas

我在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选项。

有没有人有类似的经历?

2 个答案:

答案 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