我们需要生成的输出是标准分隔文件,但我们需要二进制文件而不是ascii内容。这可能使用SAS吗?
答案 0 :(得分:4)
您需要特定的二进制格式吗?或者只是非ascii的东西?如果您正在使用proc导出,则可能仅限于可用的任何格式。但是,您始终可以手动创建csv。
如果有的话,你可以简单地压缩csv文件。
例如,在* nix系统上运行,你会使用类似的东西:
filename outfile pipe "gzip -c > myfile.csv.gz";
然后手动创建csv:
data _null_;
set mydata;
file outfile;
put var1 "," var2 "," var3;
run;
如果这是PC / Windows SAS,我不是那么熟悉,但你可能需要安装命令行zip工具。
SAS的这个链接建议使用winzip,它有一个免费下载的版本。否则,代码类似。 http://support.sas.com/kb/26/011.html
答案 1 :(得分:1)
您是说您要将二进制数据输出到csv?
如果是这样,我认为没有必要就如何处理这个问题制定标准。
我建议尝试一下(想到proc导出)并查看结果是否符合您的期望。
答案 2 :(得分:1)
您实际上可以将CSV文件设为SAS商品; CSV是有效的SAS目录条目类型。
以下是一个例子:
filename of catalog "sasuser.test.class.csv";
proc export data=sashelp.class
outfile=of
dbms=dlm;
delimiter=',';
run;
filename of clear;
这段代码将SASHELP.CLASS导出到条目类型为CSV的SAS目录条目。
通过这种方式,您可以获得二进制格式,您可以使用PROC CPORT / CIMPORT在不同平台上的SAS安装之间移动,不必担心所使用的二进制包格式是否可用于SAS会话,因为它是内部SAS格式。 / p>
答案 3 :(得分:0)
使用SAS输出.csv文件;在Excel中打开它并另存为您的客户想要的格式。您也可以在###中使用一些脚本来自动执行此过程。 (用您最喜欢的脚本语言替换###。)