Encoding 输出文件中的SAS编码问题

Encoding 输出文件中的SAS编码问题,encoding,sas,Encoding,Sas,我在将数据集中的内容输出到外部文件时遇到了一个奇怪的问题 data test (encoding=utf8); set test1; file "U:\Projects\...\test.txt" encoding='utf-8' mod; put / ' <termEntry id="' _N_ +(-1) '">' / ' <note type="TS_Status"

我在将数据集中的内容输出到外部文件时遇到了一个奇怪的问题

    data test (encoding=utf8);
        set test1;
        file "U:\Projects\...\test.txt" encoding='utf-8' mod;
        put
    /   '       <termEntry id="' _N_ +(-1) '">'
    /   '         <note type="TS_Status">' status '</note>'
    /   '         <note type="TS_Remark">' message_from_admin '</note>'
.....
....
;
run;
数据测试(编码=utf8);
设置test1;
文件“U:\Projects\…\test.txt”encoding='utf-8'mod;
放
/   '       '
/“”状态“”
/“”来自管理员的消息“”
.....
....
;
跑
数据集test1的编码是utf-8

问题是输出文件test.txt的编码随输入内容而变化!!例如

当输入100行时,为utf-8;当输入10行时,它是ANSI格式的

即使在数据语句文件语句

所以我想知道

  • 为什么会发生这种情况,以及如何准确地控制编码
  • 两个位置的编码=选项如何产生差异

  • 谢谢

    您好,没有人有任何答案?@mj-file语句上的编码选项应该是唯一会影响test.txt文件编码的内容。您是否确定输入少于10行的ANSI编码(如果是,请解释您是如何确定编码的)?我在test1中尝试了1行,但仍然得到了utf-8编码。我在linux中使用
    file test.txt
    命令进行了验证。我得到了这个输出:
    >file test.txt
    test.txt:UTF-8 Unicode文本,带有CRLF行终止符
    @cmjohns:Yes。刚刚又测试了一次。数据测试(编码=utf8);设置sasuser.Acities;文件“C:\Documents and Settings***\Desktop\Test\encoding\u Test.txt”encoding='utf-8'mod;放置/“”/“”机场名称“”/“”;跑输出txt文件的编码保持ANSI。你可以试一试。太奇怪了…@mj:我仍然很好奇你用什么程序或方法来确定文本文件的编码。我似乎从不同的方法中得到了不同的结果。例如,TextPad的properties对话框显示ANSI,而Notepad++程序显示UTF-8。Linux中的file命令也显示UTF-8。顺便说一句,如果我用Firefox打开“encoding_test.txt”文件,然后选择View->Character encoding,它也会显示UTF-8。windows“记事本”程序也显示UTF-8。