我想在我的文件中使用字符编码 UTF-8(无 BOM)。我可以从“格式”菜单更改编码,但每次创建新文件或打开文件时都会重置。
我该怎么做 Notepad++ 使用 UTF-8(没有 BOM)作为默认编码?
当我尝试在记事本中保存带有非英语文本的文本文件时,我可以选择在Unicode、Unicode Big Endian和UTF-8之间进行选择。这些格式有什么区别?
假设我不想要任何向后兼容性(与较旧的操作系统版本或应用程序)并且我不关心文件大小,这些格式中哪种更好?
(假设除了其他语言之外,文本还可以是中文或日文等语言。)
注意:从下面的答案和评论看来,在记事本行话中,Unicode 是 UTF-16(Little Endian),Unicode Big Endian 是 UTF-16(Big Endian),而 UTF-8 是 UTF-8。
我的命令提示符的默认代码页是 936。
我需要将其更改为 UTF-8。
chcp 65001
Run Code Online (Sandbox Code Playgroud)
以上是行不通的。什么是正确的?
Joomla.ini文件需要保存为 UTF-8。
编辑后我不确定文件是否为 UTF-8。
是否有类似的 Linux 命令file或一些命令可以判断文件是否确实是 UTF-8?
我在让 zsh 与 Debian Jessie 一起玩的过程中度过了一段糟糕的时光,我得出的结论是我的问题都源于我系统的语言环境。跑步locale,我明白了
LANG=en_US.utf8
LANGUAGE=
LC_CTYPE="en_US.utf8"
LC_NUMERIC="en_US.utf8"
LC_TIME="en_US.utf8"
LC_COLLATE="en_US.utf8"
LC_MONETARY="en_US.utf8"
LC_MESSAGES="en_US.utf8"
LC_PAPER="en_US.utf8"
LC_NAME="en_US.utf8"
LC_ADDRESS="en_US.utf8"
LC_TELEPHONE="en_US.utf8"
LC_MEASUREMENT="en_US.utf8"
LC_IDENTIFICATION="en_US.utf8"
LC_ALL=
Run Code Online (Sandbox Code Playgroud)
但是/etc/default/locale包含LANG=en_US.UTF-8as do /etc/environment,而我的/etc/locale.gen文件只有未en_US.UTF-8 UTF-8注释。
locale报告的内容(微妙地)与我系统上看似所有其他选项不同,并且locale?我确定这是一个编码问题,但我无法弄清楚。
我将 Excel 中的电子表格导出为 UTF-8 CSV。这生成了 UTF-8-BOM 字符编码的 CSV。在 Notepad++ 中打开这个文件,大部分字符都被正确渲染 - 包括非 ANSI 字符,如ø. 但是,连字符 ( ?) 显示为?。
我相信这个角色是U+2010 ? HYPHEN.
如果我在Notepad 中打开文件,连字符显示正确。如果我使用Vim读取文件或cat将其打印到终端,它也会正确显示。
最后,文件的八进制转储显示十六进制字节e2 80 90,这是U+2010 - HYPHENUnicode 字符的 UTF-8 编码。
那么为什么 Notepad++ 将这个字符显示为??
有人可以解释一下 Windows 7 (Pro 64-bit) 有什么变化吗?
详细信息:以前我使用的是 Windows XP,并且有一些 CSV 格式的翻译文件(UTF-8 编码)。我能够在记事本和 Excel 中查看字体。升级到 Windows 7 后,当我打开这些文件时——我看到的只是方框(你知道,如果我在浏览器中打开它们——我能够看到所有的翻译)。如果我用 Unicode 保存这些文件,一切似乎都很好。
那么,究竟发生了什么?为什么 Windows 7 使用 Unicode 而不是 UTF-8?
我有许多 zip 文件,其中存在德语变音 (äüöÄÜÖß) 的编码错误。它们出现在 filename.zip 以及包含的目录和文件中,如下所示:
等等。通常我使用 Linux,但由于这个问题,我也尝试了 Windows7 VM,但它导致相同的编码混乱。在 Linux 上,我尝试了 convvv 和 detox,但没有成功。
当我使用
我得到“正在跳过,已经是 UTF-8”。
对此有什么想法吗?
当我尝试在 Excel 中编辑 csv 文件时,我遇到了两个问题。
这真的非常令人沮丧,而且完全是在浪费时间。
有什么方法可以强制 Excel 单独保留文件格式?
我刚开始使用 zsh,并且喜欢它。但是,当涉及到国际角色时,我偶然发现了一个烦恼:
? ~ touch åäö.txt
? ~ ls
Desktop Dropbox Music Sites
Documents Library Pictures a??a??o??.txt
Downloads Movies Public
? ~ rm -v a<030a>a<0308>o<0308>.txt
åäö.txt
? ~
Run Code Online (Sandbox Code Playgroud)
使用 bash,它看起来像这样(在两种情况下,文件名rm -v都是通过按自动完成的TAB)。
johan@retina ~ $ touch åäö.txt
johan@retina ~ $ ls
Desktop Dropbox Music Sites
Documents Library Pictures åäö.txt
Downloads Movies Public
johan@retina ~ $ rm -v åäö.txt
åäö.txt
johan@retina ~ $
Run Code Online (Sandbox Code Playgroud)
我该如何解决这个问题zsh?
编辑:
设置export LANG=en_US:UTF-8修复了 eg 的输出,ls并在TAB完成时有多个匹配项时在当前输入下方的行上正确显示它。但是,从TAB …