在项目安全策略审查中,c++调用了命令行cmd,执行此命令“ secedit /export /cfg 1.txt”
如上图,成功执行。
如下图,在以下目录找到该文件 1.txt
本应该按行读取,解析数据,但解析总是乱码,查看确认是编码格式问题,编码格式为:UCS-2 LE BOM(Unicode)
建议将其转码为UTF-8格式,处理数据,否则按行读取等函数无法使用或者读到数据乱码。
Unicode转UTF-8各种谷歌查总结三种方法如下:
方法一:使用命令type将其转码:type 文件名>新文件名
如下图,在原目录会生成新的txt,编码格式utf-8,完成转码。(原因:命令行默认编码格式决定)
方法二:直接使用powershell命令:
//在powershell中输入
get-content 1.txt -encoding utf8 | set-content 2.txt -encoding unicode
//将1.txt的编码格式转换为unicode
方法三:通过cmd来调用powershell命令:
在cmd中输入
PowerShell -Command "& {get-content 1.txt -encoding utf8 | set-content 2.txt -encoding unicode}"
将1.txt的编码格式转换为unicode
至于转换为其他编码格式, 只需修改unicode这个参数就可以了, 比方说改成utf8 或者ascii, 还有其他编码格式可以选择。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/96588.html