title author date CreateTime categories
VisualStudio 编码规范工具 2.6 修改当前文件编码
lindexi
2019-04-06 15:31:53 +0800
2019-04-06 15:11:31 +0800
VisualStudio

我的 VisualStudio 插件工具支持修改文件编码,在开发的时候会遇到有逗比小伙伴上传文件使用的是 GBK 编码,他在代码里面使用字符串作为界面显示,于是在用户看到就是乱码
在 VisualStudio 2015 可以另存文件指定编码,而在 VisualStudio 2019 的时候就需要借助外部工具才能转换文件编码

编码检测和修改工具

插件使用

请到VisualStudio 插件商店 下载最新版本的编码检测和修改工具 或通过 VisualStudio 的插件安装

双击下载的插件进行安装,安装完成之后,如果是 VisualStudio 2017 可以在菜单栏看到菜单

如果是 VisualStudio 2019 需要在二级菜单才能看到菜单

修改当前文件编码

在 2.6 版本新添加的功能是修改当前打开的文件的编码,即使这个文件不在当前的项目里面

因为现在没有一个方法可以知道一个文件是什么编码,所以可以在插件自己手动选当前文件的编码,这样可以解决识别编码错误

选择当前的文件的编码,和需要转换的文件的编码,然后点击 Convert 就可以转换了

现在能支持的转换的编码是带符号的 Utf-8 和 GBK 编码

设置

点击菜单 EncodingNormailzer ,选择 Setting 可以看到下面界面

首先是可以忽略一些文件或文件夹,默认是忽略一些不是文本的文件和 bin、obj、git文件夹,注意,千万不要去转换 git 文件夹的代码。

然后我们可以设置编码,现在做的是 Utf8 、GBK、Unicode的编码,如果检测工程存在文件的编码和我们设置的不一样,就会提示去转换。

因为 Ascii 的文件,存放为 GBK 和 UTF8不带签名是无法区分的,所以忽略 ASCII 编码文件。

因为对 Unicode-16 的文件是无法使用判断存在 '\0' 来区分文件是不是文本,所以,对于某些文件还是自己手动添加是否一定检测,对于没有被添加到一定需要检测的文件,先判断他是不是文本,如果是的话,就检测。

设置保存在 我的文档\EncodingNormalizer\Account.json 文件

检查编码

然后在打开完工程,注意要加载完成才使用。

点击 Conform solution encoding ,自动检测方案所有工程的文件编码,如果发现所有的编码都符合规范,那么弹出窗口说所有文件都符合规范。如果有文件不符合规范,那么提示用户是否转换。

找到所有不符合规范的文件,可以一键点击转换

一起开发

欢迎在 github 一起开发这个工具

有任何建议和吐槽欢迎在 github 评论

2019-4-6-VisualStudio-编码规范工具-2.6-修改当前文件编码的更多相关文章

  1. Emacs复制粘贴乱码问题以及修改当前文件编码

    编码修改: 为了和Linux兼容,win环境下将emacs编码修改为utf-8,随意复制了其他关于emacs编码的配置,如下: (setq locale-coding-system 'utf-8) ( ...

  2. 格式化MyEclipse代码(java、jsp、js)行的长度@修改java代码字体@修改Properties文件编码方式

    每次用MyEclipse/Eclipse自带的快捷键Ctrl+shift+f格式化代码时,如果原来的一行代码大于80列,Eclipse就会自动换为多行.如果想格式化代码后不想让代码换行可以通过以下方式 ...

  3. IDEA中FindBugs编码规范工具使用

    IDEA中安装FindBugs插件: file--Settings--Plugins 在Plugins搜索FindBugs: 安装完成后在项目中选中文件右键找到findBugs: 检查代码结果: 按照 ...

  4. eclispe: 修改所有文件默认编码为UTF-8

    1.修改 workspace text file encoding 依次点击windows -> Preferences -> general -> Workspace,修改如图的编 ...

  5. Airbnb React/JSX 编码规范

    Airbnb React/JSX 编码规范 算是最合理的React/JSX编码规范之一了 内容目录 基本规范 Class vs React.createClass vs stateless 命名 声明 ...

  6. LLVM 编码规范 - 中文翻译

    LLVM 编码规范 导论 语言.库和标准 C++ 标准版本 C++ 标准库 Go 代码准则 机械的代码问题 代码格式化 注释 头文件 类概述 method information 注释格式化 使用Do ...

  7. Mod4-PHP编码规范

    loading... 归纳总结了能找到的一些编码规范,形成自己所需要的编码规范. 参考网址:1.2 一.文件格式 缩进使用四个空格,不使用制表符.左花括号不另起一行. if (1 == $x) { $ ...

  8. iOS 注释的5要3不要和编码规范的26个方面

    注释 代码注释,可以说是比代码本身更重要.这里有一些方法可以确保你写在代码中的注释是友好的: 不要重复阅读者已经知道的内容 能明确说明代码是做什么的注释对我们是没有帮助的. // If the col ...

  9. Java文件编码自动转换工具类(只改变编码,不会改变文件内容)

    本篇随笔主要介绍了一个用java语言写的将一个文件编码转换为另一个编码并不改变文件内容的工具类: 通过读取源文件内容,用URLEncoding重新编码解码的方式实现. public class Cha ...

随机推荐

  1. 基于jdk8的格式化时间方法

    背景 jdk8之前,java使用Date表示时间,在做时间的格式化时,通常使用SimpleDateFormat,但是SimpleDateFormat是非线程安全的,在写代码时通常要将之定义为局部变量或 ...

  2. DEDECMS织梦后台更新网站栏目无反应一键更新无响应的解决方法

    很多站长朋友反应,经常会遇到DEDECMS织梦后台更新网站栏目无反应和一键更新无响应的问题,这个问题的所在就是在于恢复了数据或者覆盖了织梦后台文件之后,点击一键更新完全没反应,或者生成栏目的时候其他都 ...

  3. HTML5 上传图片预览

    html5出现之前如果需要上传图片预览 一般都是先上传到服务器然后远程预览 html5出现之后   有个filereader 解决了这问题 //选中图片之后 $("#fileAddPic&q ...

  4. uoj60 怎样提高智商

    题意:你需要构造n个四项选择题.格式为:问在前i个问题中选了几个hi字母? 输出有最多正确答案的构造方案. 标程: #include<cstdio> using namespace std ...

  5. re模块补充

    )# 后面加数字代表前面多少个进行替换print(ret8) # stars466c7#7.subn() 会返回替换了多少次ret9=re.subn('\d','asd','sh8sd6sds7smm ...

  6. ios与android设备即时语音互通的录音格式预研说明

    本文虽属原创,但是内容都是来自于网络,参考了大家的微博,以及论坛的总结. 在做语音对讲的时候,将会碰到录制语音格式的问题,因为要考虑自己开发设备的支持的格式,还要考虑其他设备操作系统的支持的格式,以及 ...

  7. System.Web.Mvc.HttpUnauthorizedResult.cs

    ylbtech-System.Web.Mvc.HttpUnauthorizedResult.cs 1.程序集 System.Web.Mvc, Version=5.2.3.0, Culture=neut ...

  8. 服务器迁移部署PosWeb

    绑定 基本配置 高级配置

  9. TCP重传机制的学习应用

    1. TCP重传机制 TCP协议是一个可靠的协议.发送方每次发送一个数据包,需要等到ACK确认包再继续发送. 发出去的请求包在规定时间内没有收到ACK,不管是请求包丢失,还是ACK包丢失,还是网络延迟 ...

  10. javascript 解析ajax返回的xml和json格式的数据

    写个例子,以备后用 一.JavaScript 解析返回的xml格式的数据: 1.javascript版本的ajax发送请求 (1).创建XMLHttpRequest对象,这个对象就是ajax请求的核心 ...