这不是一个真正的编程问题,是否有命令行或Windows工具(Windows 7)来获取文本文件的当前编码?当然,我可以写一个小c#应用程序,但我想知道是否有一些已经内置?
当前回答
您可以在文件位置上打开git bash,然后运行命令file -i file_name来检查
例子
user filesData
$ file -i data.csv
data.csv: text/csv; charset=utf-8
其他回答
一个简单的解决方案可能是在Firefox中打开该文件。
将文件拖放到firefox中 按Ctrl+I打开页面信息
和文本编码将出现在“页面信息”窗口。
注意:如果文件不是txt格式,请将其重命名为txt,然后重试。
附:欲了解更多信息,请参阅这篇文章。
我写了第4个答案(在写作的时候)。但最近我在所有电脑上都安装了git,所以现在我使用@Sybren的解决方案。这是一个新的答案,使解决方案方便从powershell(没有把所有的git/usr/bin在PATH,这是太多的混乱对我来说)。
将此添加到您的配置文件中。
$global:gitbin = 'C:\Program Files\Git\usr\bin'
Set-Alias file.exe $gitbin\file.exe
并使用类似:file.exe——mime-encoding *。必须在命令中包含.exe,才能使PS别名正常工作。
但如果您不自定义PowerShell配置文件。ps1我建议你从我的开始:https://gist.github.com/yzorg/8215221/8e38fd722a3dfc526bbe4668d1f3b08eb7c08be0 并保存到~\Documents\WindowsPowerShell。在没有git的计算机上使用它是安全的,但如果找不到git,则会编写警告。
命令中的.exe也是我如何使用powershell中的C:\WINDOWS\system32\where.exe;和许多其他操作系统CLI命令是“默认隐藏”的powershell, *耸肩*。
(Linux)命令行工具'file'可通过GnuWin32在Windows上使用:
http://gnuwin32.sourceforge.net/packages/file.htm
如果你安装了git,它位于C:\Program Files\git\usr\bin.
例子:
C:\Users\SH\Downloads\SquareRoot>file * _UpgradeReport_Files; directory Debug; directory duration.h; ASCII C++ program text, with CRLF line terminators ipch; directory main.cpp; ASCII C program text, with CRLF line terminators Precision.txt; ASCII text, with CRLF line terminators Release; directory Speed.txt; ASCII text, with CRLF line terminators SquareRoot.sdf; data SquareRoot.sln; UTF-8 Unicode (with BOM) text, with CRLF line terminators SquareRoot.sln.docstates.suo; PCX ver. 2.5 image data SquareRoot.suo; CDF V2 Document, corrupt: Cannot read summary info SquareRoot.vcproj; XML document text SquareRoot.vcxproj; XML document text SquareRoot.vcxproj.filters; XML document text SquareRoot.vcxproj.user; XML document text squarerootmethods.h; ASCII C program text, with CRLF line terminators UpgradeLog.XML; XML document text C:\Users\SH\Downloads\SquareRoot>file --mime-encoding * _UpgradeReport_Files; binary Debug; binary duration.h; us-ascii ipch; binary main.cpp; us-ascii Precision.txt; us-ascii Release; binary Speed.txt; us-ascii SquareRoot.sdf; binary SquareRoot.sln; utf-8 SquareRoot.sln.docstates.suo; binary SquareRoot.suo; CDF V2 Document, corrupt: Cannot read summary infobinary SquareRoot.vcproj; us-ascii SquareRoot.vcxproj; utf-8 SquareRoot.vcxproj.filters; utf-8 SquareRoot.vcxproj.user; utf-8 squarerootmethods.h; us-ascii UpgradeLog.XML; us-ascii
我发现做到这一点的唯一方法是VIM或notepad++。
EncodingChecker
文件编码检查器是一个GUI工具,允许您验证一个或多个文件的文本编码。该工具可以显示所有选定文件的编码,或者仅显示不具有指定编码的文件的编码。
文件编码检查程序需要。net 4或更高版本才能运行。
推荐文章
- GIT克隆在windows中跨本地文件系统回购
- 如何运行一个PowerShell脚本而不显示窗口?
- PowerShell:仅为单个命令设置环境变量
- “\d”在正则表达式中是数字吗?
- 为什么这个Windows批处理文件只执行第一行,而在命令shell中执行所有三行?
- 环境变量存储在Windows注册表的哪里?
- 有一个好的Valgrind Windows的替代品吗?
- 使用Javascript的atob解码base64不能正确解码utf-8字符串
- Windows和Linux上的c++编译:ifdef开关
- 如何验证批处理文件中是否存在一个文件?
- XAMPP -端口80被PID 4的“无法打开进程”使用!12
- 为什么git在Windows下记不住我的密码
- Git克隆/拉不断冻结在“存储密钥在缓存?”
- 尝试将一个非属性列表对象设置为NSUserDefaults
- 有没有替换Windows (Visual C)的unistd.h ?