输出文件中的 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">' status '</note>'
/ ' <note type="TS_Remark">' message_from_admin '</note>'
.....
....
;
run;
数据集test1的编码为utf-8。
问题是输出文件test.txt的编码随输入内容的不同而变化!!例如
输入100行时为utf-8;当输入10行时,是ANSI格式。
即使我在数据语句和文件语句之后删除两个\encoding= options,也会出现同样的问题
所以我想知道
- 为什么会这样发生了什么以及如何准确控制编码?
- 两个位置中的encoding= 选项有何不同?
谢谢
I met a weird problem when outputing contents in data set into external file.
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;
Encoding of dataset test1 is utf-8.
The problem is encoding of output file test.txt varies with the input contents!!E.g.
When 100 lines are input, it's in utf-8; when 10 lines are input, it's in ANSI.
The same problem occurs even if I remove both\either encoding= options after data statement and file statement
So I'd like to know
- Why this happens and how to control the encoding accurately?
- How encoding= options in both locations make a difference?
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论