草庐IT

ruby `encode' : "\xC3"从 ASCII-8BIT 到 UTF-8 (Encoding::UndefinedConversionError)

tvdb中的汉尼拔剧集里有奇怪的角色。例如:Œuf于是ruby吐出:./manifesto.rb:19:in`encode':"\xC3"fromASCII-8BITtoUTF-8(Encoding::UndefinedConversionError)from./manifesto.rb:19:in`to_json'from./manifesto.rb:19:in`'第19行是:puts@tree.to_json有没有办法处理这些非utf字符?我宁愿不替换它们,而是转换它们?还是无视他们?我不知道,感谢任何帮助。奇怪的是脚本通过cron运行良好。手动运行它会产生错误。

ruby-on-rails - Rails 3 无效的多字节字符 (US-ASCII)

我找到了类似的帖子here但无论如何我都无法解决问题。我明白了/home/fra/siti/Pensiero/db/seeds.rb:32:invalidmultibytechar(US-ASCII)/home/fra/siti/Pensiero/db/seeds.rb:32:invalidmultibytechar(US-ASCII)/home/fra/siti/Pensiero/db/seeds.rb:32:syntaxerror,unexpected$end,expecting')'...edilvaloredellavita,sièmalati",:user_id=>1,:ca

Ruby 1.9 - 无效的多字节字符 (US-ASCII)

我试图让我的Rails应用程序(2.3.5)在Ruby1.9上运行,我有这个函数可以对字符串进行一些转换:defreplace_special_chars(downcase=true)ifdowncasestring=self.downcaseelsestring=selfendstring.gsub!/á|ã|à|ä|â/,'a'string.gsub!/é|è|ë|ê/,'e'string.gsub!/í|ì|ï|î/,'i'string.gsub!/ó|õ|ò|ô|ö/,'o'string.gsub!/ú|ù|ü|û/,'u'string.gsub!/ç/,'c'string.g

ruby - 使用 `?`(问号)在 Ruby 中获取 ASCII 字符代码失败

我现在需要一个字符的ASCII值(对于ProjectEulerquestion#22,如果你想得到具体的),我遇到了一个问题。作为ruby​​的新手,我用谷歌搜索了一下,发现?是要走的路:?A或其他。但是当我将它合并到我的代码中时,该语句的结果是字符串"A"——没有字符代码。[0]和slice(0)存在同样的问题,理论上它们都应该返回ASCII码。我唯一能想到的是这是ruby版本问题。我正在使用1.9.1-p0,今天下午从1.8.6升级。我从Ruby的工作版本开始,在同一个目录中做了一些欺骗,我想我可能已经有了没有与.zip文件捆绑在一起的文件,所以我没有下载它们。那么为什么我的所有A

Ruby 将 CSV 文件读取为 UTF-8 和/或将 ASCII-8Bit 编码转换为 UTF-8

我正在使用ruby1.9.2我正在尝试解析包含一些法语单词(例如spécifié)的CSV文件,并将内容放入MySQL数据库中。当我从CSV文件中读取行时,file_contents=CSV.read("csvfile.csv",col_sep:"$")返回的元素是ASCII-8BIT编码的字符串(spécifié变为sp\xE9cifi\xE9),然后像“spécifié”这样的字符串没有正确保存到我的MySQL数据库中。YehudaKatz表示ASCII-8BIT实际上是“二进制”数据,这意味着CSV不知道如何读取适当的编码。所以,如果我尝试让CSV强制编码如下:file_cont

ruby - 如何摆脱 ruby 中的非ascii字符

我有一个RubyCGI(不是Rails),可以从Web表单中挑选照片和标题。我的用户非常热衷于使用智能引号和连字,他们从其他来源粘贴。我的网络应用程序不能很好地处理这些非ASCII字符,是否有快速的Ruby字符串操作例程可以摆脱非ASCII字符? 最佳答案 使用字符串#encode从Ruby1.9开始,在字符串编码之间进行转换的官方方法是使用String#encode.要简单地删除非ASCII字符,您可以这样做:some_ascii="abc"some_unicode="áëëçüñżλφθΩ??"more_ascii="123A

ruby-on-rails - 不兼容的字符编码 : ASCII-8BIT and UTF-8

我使用Ruby1.9.2和Rails3.0.5我有以下错误:incompatiblecharacterencodings:ASCII-8BITandUTF-8我认为这与数据库无关。错误发生在View中的这一行(只是一个divhaml调用):#content全栈:ActionView::Template::Error(incompatiblecharacterencodings:ASCII-8BITandUTF-8):21:-flash.eachdo|name,msg|22:=content_tag:div,msg,:id=>"flash_#{name}"23:%div.clear24:

ruby - Ruby 中 chr() 的反义词是什么?

在许多语言中都有一对函数,chr()和ord(),它们在数字和字符值之间进行转换。在某些语言中,ord()被称为asc()。Ruby有Integer#chr,效果很好:>>65.chrA很公平。但是你怎么走另一条路呢?"A".each_bytedo|byte|putsbyteend打印:65这非常接近我想要的。但我真的宁愿避免循环——我正在寻找足够短的内容,以便在声明const时易于阅读。 最佳答案 如果String#ord在1.9中不存在,它在2.0中存在:"A".ord#=>65 关

Javascript\x 转义

我见过一些其他的程序有这样的东西:varstring='\x32\x20\x60\x78\x6e\x7a\x9c\x89';而且我不得不尝试摆弄数字和字母,以找到我想要显示的文本。我想知道是否有一个函数可以找到字符串的\x转义,比如JS中的string.toUpperCase()。我正在使用processingJS,但我可以使用其他编程语言来查找\x的ASCII。 最佳答案 如果你有一个你想转义的字符串,你可以使用String.prototype.charCodeAt()如果您有带转义的代码,您可以只计算它们以获得原始字符串。如果它

javascript - 为什么不能在 node.js 中使用 ascii 模式在文件中写入空字节?

这是我的代码varfs=require('fs');varfp=fs.openSync('binary.txt',"w");varbyte='\0';fs.writeSync(fp,byte,null,'ascii');当我打开binary.txt文件时执行它后,它包含0x20而不是预期的空字节。现在当我使用fs.writeSync(fp,byte,null,'utf-8');我在文件中得到了想要的空字节。 最佳答案 这不是因为具体的文件,而是Node将ASCII转换为字节以写入的方式。您将在其中看到相同的行为:newBuffer(