通过 dotnet tool 安装
确定 dotnet 版本在 3.1 以上,可从https://dotnet.microsoft.com/更新到最新版本
在命令行输入下面命令作为全局工具安装
dotnet tool install -g dotnetCampus.EncodingNormalior
编码规范工具使用方法:
输入要检测的文件夹或csproj文件
EncodingNormalior -f E:\lindexi\EncodingNormalior
上面代码的 E:\lindexi\EncodingNormalior
为需要修复文本文件的编码规范的文件夹
输入文件夹 -f 文件夹路径
必须包含的文件 --IncludeFile 文件路径
文件白名单 --WhiteList 文件路径
规定的编码 -E Encoding
默认是 Utf8 编码
是否尝试修复编码 --TryFix [true|false]
设置true将尝试自动修复,默认为不自动修复
注意: Encoding 包含 utf8、 gbk、 ascii、utf16、BigEndianUnicode
程序从输入的文件夹读取配置,越靠近文本的配置优先度越高。 如果不存在配置,使用默认配置。
白名单配置名称: WhiteList.txt
必须包含的文件配置名称: IncludeFile.txt
要求编码是 UTF8
配置文件有白名单文件和指定文本的文件后缀。
白名单文件是让软件可以忽略某些文件或文件夹,如 obj 这些文件夹。
因为判断一个文件是文本的算法,还没有存在一个可以绝对判断的算法,所以依靠人工添加。
软件检查文件是否需要检测的顺序是:
判断文件是否在白名单中,如果是,检查结束,不进行检测编码。如果不是,继续。
判断文件是否在 必须包含的文件配置
中,如果是,检查结束,进行检测编码。如果不是,继续。
判断文件是否是文本,如果是,进行检测编码。
对于 Utf-32 的文件,几乎不存在一个算法可以判断他是文本,除非他带 BOM 。
关于文件编码相关,如果先了解更多,戳此链接C# 判断文件编码
白名单包括文件夹白名单和文件白名单。
白名单文件以行作为分割,一行写一个文件或文件夹。
其中文件夹白名单的格式为 文件名 + \\
如 obj 文件夹添加到白名单应该写 obj\\
文件夹不支持通配符。
注意:文件夹的\\
也可以写为/
但是不建议。
文件白名单格式为 文件
如 lindexi.png 文件夹添加到白名单应该写 lindexi.png
文件支持通配符,如忽略所有的 png 文件,可以写 *.png
文件通配符和 MS (Microsoft) 通配符格式相同。
不支持指定文件夹中的文件。如 obj\\lindexi.txt
。
默认白名单:https://github.com/dotnet-campus/EncodingNormalior/blob/master/EncodingNormalior/Resource/WhiteList.txt
包含文件的配置以行做分割。
一行包括一个包含的文件。
文件支持通配符,通配符和 MS (Microsoft) 通配符格式相同。
例:
lindexi.txt
*.lindexitxt
lindexi.md
lindexi.dox
lindexi*.txt
注意:包含的文件中不支持文件夹路径。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。