vs2019 C++代码上传到linux服务器中文乱码,批量转换编码格式UTF-8

9 篇文章 0 订阅
4 篇文章 0 订阅

 一、问题:

C++基于Linux的远程开发,在windows用VS2019开发代码,拷贝到linux服务器,中文是乱码。

1.vs2019的代码,用notepad++看编码格式是GB2312

 2.代码在linux用vim看编码格式是latin1(自动编码判断机制不准导致的)

 解释参考:https://www.cnblogs.com/Mrq-t/p/12795725.html

二、解决方案:

2.1.单个文件

2.1.1 如果文件在windows,用txt打开,然后另存为的时候,选择UTF-8格式。或者使用VS2019的“高级保存选项”的方法,参考情况三:https://blog.csdn.net/qq_42956179/article/details/106075025?spm=1001.2014.3001.5502。

2.1.2 如果文件在linux,用vim打开,设置一下编码格式。

   2.1.2.1 在Vim中可以直接查看文件编码
    :set fileencoding
     2.1.2.2 在Vim中直接进行转换文件编码,比如将一个文件转换成utf-8格式
    :set fileencoding=utf-8

  参考:https://blog.csdn.net/jnbbwyth/article/details/6991425

2.1.3 如果文件在linux,使用icnov命令,需要安装(未验证)。

  参考:https://blog.csdn.net/konglongaa/article/details/80590843

2.2 多个文件,批量转换.

  2.2.1 第一步,使用vs2019下载插件Format on Save

  该博客适用于刚开发的时候,参考:https://www.cnblogs.com/zzzsj/p/16797836.html

  2.2.2 第二步,在项目 属性 -> C/C++ -> 命令行中配置UTF-8

       2.2.3 第三步,右击项目名称,会有Format in projec选项,选中就会批量转换了。

        该博客适用于已经开发完,很多文件都是GB2312的编码,需要批量转换,参考情况二:https://blog.csdn.net/qq_42956179/article/details/106075025?spm=1001.2014.3001.5502。配置完应用之后,VS2019会自动转码。

       注意事项:

      1.由于修改了编码,可能会导致存储中文的数组越界,调大点就可以了。

      2.除了C++的.cpp文件和.h文件可以用这种方法,其他的配置文件和MakeFile文件需要避免转换编码格式(有可能会导致makefile无法编译)。

   

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值