Tag: utf 8

通过脚本中的vim将文件编码更改为utf-8

在我们的服务器已经从Debian 4更新到5之后,我刚刚被击倒。我们切换到UTF-8环境,现在我们在浏览器上正确打印文本时遇到问题,因为所有文件都是非UTF8编码, 8859-1,ascii等 我尝试了许多不同的脚本。 我尝试的第一个是“iconv”。 那一个不工作,它改变了内容,但文件的enconding仍然是非utf8。 enca,encamv,convmv和其他一些我通过apt-get安装的工具也有同样的问题。 然后,我发现一个python代码,它使用chardet通用检测模块来检测文件的编码(工作正常),但使用unicode类或编解码类保存为utf-8不工作,没有任何错误。 我发现将文件及其内容转换为UTF-8的唯一方法是vi。 这些是我为一个文件做的步骤: vi filename.php :set bomb :set fileencoding=utf-8 :wq 而已。 那个作品完美。 但是怎样才能通过脚本来运行。 我想写一个脚本(Linux shell),它遍历一个目录,获取所有的php文件,然后使用上面的命令使用vi转换它们。 由于我需要启动vi应用程序,我不知道如何做这样的事情: "vi –run-command=':set bomb, :set fileencoding=utf-8' filename.php" 希望可以有人帮帮我。

由于bot,Ruby on Rails“UTF-8中的无效字节序列”

当我滚动我的网站的时候,我有一个由中文bot触发的错误: http : //www.easou.com/search/spider.html 。 我的应用程序的版本都是用Ruby 1.9.3和Rails 3.2.X 这里是一个堆栈跟踪: An ArgumentError occurred in listings#show: invalid byte sequence in UTF-8 rack (1.4.5) lib/rack/utils.rb:104:in `normalize_params' ——————————- Request: ——————————- * URL : http://www.my-website.com * IP address: XXXX * Parameters: {"action"=>"show", "controller"=>"listings", "id"=>"location-t7-villeurbanne–58"} * Rails root: /…/releases/20140708150222 * Timestamp : 2014-07-09 02:57:43 +0200 ——————————- Backtrace: ——————————- rack (1.4.5) lib/rack/utils.rb:104:in […]

4KB中可以存储多less个字符?

当字符使用UTF-8编码时,我可以存储多less个字符?

Android Studio:用于编码UTF-8的不可映射字符

从eclipse导入我的项目到Android工作室后,我有以下错误: Error: unmappable character for encoding UTF-8 Android Studio :0.5.8

Tmux边界显示为xq而不是行?

我无法获得tmux来显示边界线。 他们正在用x和q创build。 这是一个debian挤压服务器和语言环境设置为en_US UTF8。 我也尝试添加 # instructs tmux to expect UTF-8 sequences setw -g utf8 on set -g status-utf8 on 行到.tmux.conf。 似乎没有任何工作。 我不确定这是否是一个语言环境问题。 它在其他服务器上正确显示,但不是debian。 我很欣赏你可以提供的任何提示! 谢谢…

在崇高文本中使用BOM将文件的编码设置为UTF8 3

当我在Sublime Text 3中打开文件时,在底部我有一个选项来设置字符编码,如屏幕截图所示。 可以select将它设置为UTF-8 ,在做了一些研究之后,UTF-8就没有BOM了,但是我想把它设置为UTF-8,如下所示: 我怎样才能在ST3内做到这一点? 任何帮助将不胜感激。 谢谢

如何从文本文件中删除非UTF-8字符

我有一堆用utf-8编码的阿拉伯文,英文,俄文文件。 试图用Perl脚本处理这些文件,我得到这个错误: Malformed UTF-8 character (fatal) 手动检查这些文件的内容,我发现了一些奇怪的字符。 现在我正在寻找一种方法来自动从文件中删除这些字符。 有没有办法呢?

当我们导入CSV数据时,如何消除“UTF-8中的无效字节序列”

我们允许用户通过csv导入数据(使用ruby 1.9.2,因此速度更快)。 作为用户数据,当然,可能没有适当的消毒。 当我们尝试在/ index方法中显示数据时,我们有时会得到错误“UTF-8中的无效字节序列”,指向我们的erb,在其中显示一个字段widget.name 当我们进行导入时,我们希望强制传入的数据是有效的…是否有一个ruby运算符,将string映射到一个有效的utf8string,例如,像 goodstring = badstring.no_more_invalid_bytes “坏”数据的一个例子是char看起来像连字符,但不是常规的ascii连字符。 我们宁愿将non-utf-8字符映射到一个合理的ascii等价的(umlat -u去你的例子),但是我们可以简单地去掉字符。 因为这是导入大量的数据时,它需要一个快速的内置运算符,希望… 注意:这里是一个数据的例子。 该文件来窗口,是8位ASCII。 当我们导入它,并在我们的erb中,我们显示widget.name.inspect(而不是widget.name),我们得到:“Chains \ x96 Accessories” 所以数据的一个例子是实际上是8位代码96的“连字符”。 —当我们改变我们的csvparsing分配fldval = d.encode('UTF-8')它会引发这个错误: Encoding::UndefinedConversionError in StoresController#importfinderitems "\x96" from ASCII-8BIT to UTF-8 我们正在寻找的是一种简单的方法,只要强制它成为有效的utf8,无论原始types如何,即使我们只是简单地删除非ascii。 虽然不像强制编码那样“好”,但是对于我们的导入时间来说,这是一个很小的代价:d.to_s.strip.gsub(/ \ P {ASCII} /,'')谢谢Mladen!

修复损坏的UTF8编码

我正在修复一些不好的UTF8编码的过程。 我目前正在使用PHP 5和MySQL 在我的数据库中,我有几个不好的编码实例,打印如下:? 数据库sorting规则是utf8_general_ci PHP正在使用一个正确的UTF8头 记事本++被设置为使用UTF8没有BOM 数据库pipe理在phpMyAdmin中处理 不是所有重音字符的情况都被破坏了 我所需要的是某种function,它可以帮助我将ƒƒ®,ƒƒƒ¼¼和其他类似的实例映射到它们正确的带有重音的UTF8字符。

Unicode在C + + 11

我一直在阅读Unicode的主题 – 特别是在C ++ 11中的UTF-8(非)支持,我希望Stack Overflow的专家能够向我保证我的理解是正确的,或者指出我误解的地方或错过的地方。 一个简短的总结 首先,你可以在源代码中定义UTF-8,UTF-16和UCS-4文字。 此外, <locale>头文件包含了几个可以在UTF-8,UTF-16,UCS-4和平台多字节编码之间进行转换的std::codecvt实现(尽pipeAPI看起来很温和,但小于直截了当)。 这些codecvt实现可以imbue()在stream上,以便在读取或写入文件(或其他stream)时进行转换。 [ 编辑: Cubbi指出,我忽略了提及<codecvt>标题,它提供了不依赖于语言环境的std::codecvt实现。 此外, std::wstring_convert和wbuffer_convert函数可以使用这些codecvt来直接转换string和缓冲区,而不依赖于stream。] C ++ 11还包括C99 / C11 <uchar.h>头文件,其中包含将平台多字节编码(可能是也可能不是UTF-8)的单个字符转换成UCS-2和UCS-4的函数。 但是,这是关于它的程度。 虽然你当然可以将UTF-8文本存储在std::string ,但是我没有办法看到对它做任何有用的事情。 例如,除了在你的代码中定义一个文字,你不能validation一个字节数组是否包含有效的UTF-8,你不能找出长度(即Unicode字符的数量,对于“字符” )包含一个UTF-8的std::string ,并且不能以字节为单位以任何方式迭代std::string 。 同样,即使C ++ 11增加了std::u16string也不是真的支持UTF-16,而只是老的UCS-2 – 它不支持代理对,只留下了BMP。 意见 鉴于UTF-8是几乎所有Unix派生系统(包括Mac OS X和 * Linux)上处理Unicode的标准方法,并且已经基本成为网上事实上的标准,所以在现代C ++中缺乏支持像一个非常严重的遗漏。 即使在Windows上,新的std::u16string并不真正支持UTF-16的事实似乎有些遗憾。 *正如在评论中指出的,在这里明确指出,Mac OS的BSD派生部分使用UTF-8,而Cocoa使用UTF-16。 问题 如果您设法阅读所有这些,谢谢! 只是几个简单的问题,因为这是堆栈溢出毕竟… 上面的分析是否正确,或者是否有其他Unicode支持设施? 在过去几年中,标准委员会在推动C ++向前发展方面做了出色的工作。 他们都是聪明的人,我认为他们很清楚上述缺点。 是否有一个众所周知的原因,Unicode支持在C ++中仍然很差? outlook未来,有没有人知道有什么scheme可以纠正? 快速searchisocpp.org似乎没有透露任何东西。 […]