`
RunUpwind
  • 浏览: 91903 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Encoding::UndefinedConversionError: "\xE5" from ASCII-8BIT to UTF-8

 
阅读更多

在做编码转换时,遇了这个问题。原代码如下:

str.encode('UTF-8') if str.encoding != 'UTF-8'

所以就遇到了错误:Encoding::UndefinedConversionError: "\xE5" from ASCII-8BIT to UTF-8

 

 

后来看了https://github.com/lassebunk/webcam_app/issues/1

将代码修改为以下,

 

str.force_encoding('UTF-8') if str.encoding != 'UTF-8'

这只是改了字符串的encoding值,实际数据并未转码。

 

问题等待解决中...

 

 

2011-08-01问题解决 ,代码:

str = str.force_encoding('GBK')
str = str.encode('UTF-8')

 

思考:

当str.encoding == 'ASCII-8BIT'时,ruby并不知道这个str的编码。我用其他编辑器得知它的编码是GBK,所以我先强制将它标记为GBK,再转为UTF-8, 就成功了。

 

分享到:
评论

相关推荐

    解决Invalid byte 1 of 1-byte UTF-8 sequence

    标题 "解决Invalid byte 1 of 1-byte UTF-8 sequence" 涉及的问题是关于字符编码不匹配引发的错误,通常在处理包含非ASCII字符的文本文件时出现。UTF-8是一种广泛使用的字符编码标准,能表示世界上大部分语言的字符...

    gb2312,utf-8,utf-8-bom等编码格式的互相转换

    1. 将GB2312编码的字符串转换为UTF-8: ```csharp string gb2312String = "GBK编码的字符串"; byte[] gb2312Bytes = Encoding.GetEncoding("gb2312").GetBytes(gb2312String); string utf8String = Encoding.UTF8....

    PB9转换utf-8例子

    标题中的“PB9转换utf-8例子”指的是在PowerBuilder 9(PB9)环境下将数据从非UTF-8编码转换为UTF-8编码的一种解决方案。由于PB9本身不直接支持这种转换,开发者通常需要利用外部库或者特定的编程技巧来实现这个功能...

    faraday-encoding:法拉第中间件在服务器指定时设置正文编码

    法拉第::编码 ...# => raise Encoding::UndefinedConversionError: "\xE8" from ASCII-8BIT to UTF-8 这就是我编写 Farday::Encoding gem 的原因。 还请参见: 安装 将此行添加到应用程序的 Gemfile 中

    C# 生成xml文件,编码为utf-8方法

    最后,使用 MemoryStream 对象的 ToArray 方法将 XML 数据转换为 byte 数组,然后使用 Encoding.UTF8.GetString 方法将其转换为 UTF-8 编码的字符串。 在上面的代码中,首先创建了一个 MemoryStream 对象,然后创建...

    Java解决UTF-8的BOM问题

    在Java编程中,UTF-8编码是一个非常常见且广泛使用的字符编码格式,它能支持全球大部分语言的字符表示。然而,UTF-8有一个特殊特性,那就是它可以带有Byte Order Mark(BOM),这是一个特殊的字节序列,用于标识数据...

    字符编码转换类,支持 ANSI、Unicode、Unicode big endian、UTF-8、UTF-8+Bom互相转换

    3. UTF-8:一种变长的Unicode编码,用1到4个字节表示一个字符。对于ASCII字符,UTF-8编码与ASCII相同,都是单字节。UTF-8的特殊之处在于它包含一个字节顺序标记(BOM),即UTF-8+BOM,但大多数情况下,UTF-8无BOM更...

    xe10_utf_8转换

    "xe10_utf_8转换"这个主题显然与在Delphi中处理UTF-8编码有关。UTF-8是一种非常普遍的字符编码标准,能够支持Unicode字符集,包括世界上几乎所有的文字系统。在Delphi程序中,处理UTF-8编码通常是进行数据输入、输出...

    C#写的 GBK GB2312 UTF-8转换

    以下是一个简单的C#代码示例,演示如何将GBK编码的字符串转换为UTF-8: ```csharp using System; using System.Text; class Program { static void Main() { string gbkStr = "你好,世界"; // 假设这是GBK编码...

    UTF-8_GB2312-Src

    UTF-8,全称Unicode Transformation Format - 8 bit,是一种变长的Unicode编码方式,广泛应用于网页和软件中,它可以表示Unicode字符集中所有的字符。而GB2312,全称“汉字国标交换码”,是中国大陆早期的简体中文...

    UTF-8编码转化(Visual Basic)

    UTF-8是Unicode的一种编码方式,它的特点是前128个字符(ASCII字符)与ASCII编码相同,对于其他Unicode字符,使用多个字节进行编码,每个字节都以1或1110开头。 2. **读取UTF-8文件**: 在Visual Basic中,使用`My...

    utf-8 互转 gb2312 转码

    反之,将GB2312编码的字符串转换为UTF-8: ```python s_gb2312 = "你好,世界" # 假设这是GB2312编码的字符串 s_utf8 = s_gb2312.encode('gb2312').decode('utf-8') ``` 需要注意的是,不是所有UTF-8或GB2312编码...

    Force-UTF-8-No-BOM-.vsix

    即使字符串中混杂着多种编码,\ForceUTF8\Encoding::toUTF8() 都能成功将其转换为统一的UTF-8编码。此外,还提供了 \ForceUTF8\Encoding::fixUTF8() 函数,专门用于修复因多次转码导致的乱码问题。如果环境中支持...

    py 文件中存在中文,运行报错 网上找了很多资源,只有这个调试是成功的

    py 文件中存在中文,运行报错 print("中文编码") 或 # 中文 print("hello world") ...SyntaxError: Non-UTF-8 code starting with '...找到 编辑器 > 文件编码,将 IDE Encoding 和 Project Encoding 设置为utf-8。

    PB字符串转XML文件,解决PB12.5创建UTF-8文件BOM问题(powerbuilder 12.5)

    解决PB创建UTF-8文件带BOM问题; 2.字段串直接生成XML文件。 由于项目需要,需要字符串转为XML文件,直接用Fileopen进行EncodingUTF8编码后,发现文件实际为UTF-8 BOM编码 问度娘发现有相同问题,但解决方式是利用...

    gbk-utf8:GBK转换为UTF-8,反之亦然

    2. `UTF8ToGBK(char* utf8Buffer, char* gbkBuffer)`: 将UTF-8编码的字符串转换成GBK编码的字符串。 3. 可能还有错误处理函数,如`CheckEncodingValidity(char* buffer, int encoding)`,用于检测输入字符串是否符合...

    xml.rar_UTF XML_UTF-8编码_utf_utf-8_xml utf-8

    在"xml.rar_UTF XML_UTF-8编码_utf_utf-8_xml utf-8"这个压缩包中,我们主要探讨的是与XML文档相关的编码问题,特别是UTF-8编码。 UTF-8是一种广泛使用的Unicode字符编码方案。它能够表示Unicode标准中的所有字符,...

    windows下ascii unicode utf8 相互转换

    1. ASCII编码:ASCII(美国标准信息交换代码)是最基础的字符编码,它使用7位二进制来表示128个字符,包括英文大小写字母、数字、标点符号和一些控制字符。ASCII编码主要用于纯英文环境,不支持其他语言的特殊字符。...

    脚本可以批量去除XML文件中的<?xml version=“1.0“ encoding=“utf-8“?>

    脚本可以批量去除XML文件中的“1.0“ encoding=“utf-8“?>

    C#:批量修改文本编码为UTF-8(含源码)

    不同的编码格式会影响文本的正确显示,比如ASCII、GBK、UTF-8等。本篇主要介绍如何使用C#语言批量修改文本文件的编码为UTF-8,并提供一个VS2013项目的源码实例。 首先,我们要理解什么是UTF-8编码。UTF-8是一种广泛...

Global site tag (gtag.js) - Google Analytics