美文网首页
SAS-MD5加密

SAS-MD5加密

作者: Lucky_Gao | 来源:发表于2018-10-11 01:28 被阅读0次
    解决中文md5有误?
    • 检查数据

    检查数据是否纯在空格,如果存在空格,可使用以下代码去空格处理。

        left函数:        刪除字符串左边(开头> 的空格
        right函数:       刪除字符串右边(结尾> 的空格
        trim函数:        刪除字符串右边(结尾> 的空格 
        strip函数:       刪除字符串前后空格
        compress函数:    删除字符串中所有空格
        compbl函数:      将连续两个或以上的空格压缩为1个空格
    
    • 查看系统目前编码
      proc options option=encoding;
       run;
      
    • 修改SAS配置文件

    1. 由于sas默认编码是gbk2312,所以需要修改sas编码。

    2. 进入SAS 的nls 目录,D:\Program Files\SASHome\SASFoundation\9.4\nls,查看是否是多语言,目前如下目录有多个语言可供选择。


      image.png
    3. 查看系统默认选择的语言。进入目录 D:\Program Files\SASHome\SASFoundation\9.4,查看文件 sasv9.cfg ,系统默认为zh。


      image.png
    4. 修改zh为u8:


      image.png
    5. 重启sas并运行。(如上显示,填写-Rlang,可以让sas运行R代码,代码见后续部分。)

    6. 执行代码:

    data a;
    set c;
    y = put(md5(name),$hex32.);
    run;
    

    R代码运行

    1. 修改如上配置,查看sas是否支持R代码运行。
     proc options restrict;
     run;
      ###输出
       SAS 选项受您的软件安装点管理员限制
             您的软件安装点管理员尚未限定任何 SAS 选项。
    
    1. 执行代码:
       proc options option=Rlang;
       run;
       ### 输出:
         SAS (R) PROPRIETARY SOFTWARE RELEASE 9.4  TS1M2
       RLANG             允许 SAS 执行 R 语言语句。
    
    1. 执行md5加密:
     proc iml;
    submit / R;
    library(digest)
    digest(enc2utf8("李四"),algo="md5", serialize=F)
    endsubmit;
    quit;
    
    • END

    O(∩_∩)O~~

    相关文章

      网友评论

          本文标题:SAS-MD5加密

          本文链接:https://www.haomeiwen.com/subject/rzymaftx.html