出以下错误
in `split': invalid byte sequence in GBK (ArgumentError)
解决方案:
require "iconv"
class String
def to_gbk
Iconv.iconv("GBK//IGNORE", "UTF-8//IGNORE", self).to_s
end
def to_utf8
#p "my own string"
Iconv.iconv("UTF-8//IGNORE", "GBK//IGNORE", self).to_s
end
def to_utf8_valid
if !self.valid_encoding?
ic = Iconv.new('UTF-8//IGNORE', 'UTF-8')
return ic.iconv(self)
end
self
end
end
puts "读取文件"
f=File.open("boss2.txt", 'r')
i=0
total=0
f.each_line do |line|
i+=1
line_arr=line.to_utf8_valid.split(/\t/)
len =line_arr.length
if (len!=41)
puts "line: #{line_arr[0]} #{len}"
total+=1
end
#puts(i,len)
end
puts "total:#{total}"
分享到:
相关推荐
《Programming Ruby 1.9 (3rd edition)》是一本专为程序员编写的关于Ruby语言的权威指南,这本书的第三版详细介绍了Ruby 1.9版本的语言特性、库以及编程实践。Ruby是一种动态、面向对象的脚本语言,以其简洁、优雅的...
在Windows环境下安装Ruby 1.9,通常会涉及到编译环境的配置,因为Ruby的源码需要通过编译才能在Windows系统上运行。不过,如果你选择的是预编译的二进制zip包,这个过程就会简化很多。下面,我们将详细讨论如何通过...
通过阅读《Programming Ruby 1.9》,读者不仅可以掌握Ruby 1.9的最新特性,还能学习到如何编写高效、简洁的Ruby代码,以及如何利用这些新特性解决实际问题。书中的例子和练习都是为了加深理解和实践应用,对于想要在...
《Ruby 1.9中的Lambda函数详解》 Ruby语言的一大魅力在于其Block功能,它使得编写简洁、可复用的算法变得轻而易举,甚至让人们对循环的畏惧感大大降低。Block在其他编程语言中被称为Lambda函数或匿名函数,有时也被...
Ruby 1.9 的发布对Ruby社区带来了显著的变化,尤其是其与之前的1.8版本之间的不兼容性。这种不兼容性源于对Ruby语言及其核心库的深入修改,目的是提升语言性能和规范。Ruby 1.9.0的推出并非完全稳定,Matz,即Ruby的...
- **文件读写**:Ruby提供了方便的文件读写接口,可以通过简单的API进行文件的打开、读取、写入和关闭等操作。这对于处理大量文本数据的应用来说非常重要。 ##### 7. 命令行参数 - **命令行参数**:Ruby程序可以从...
- **读写操作**: 如何在Ruby中进行文件的读取和写入。 - **命令行参数**: 如何在Ruby脚本中处理命令行参数,这对于编写命令行工具非常有用。 ##### 2. 类、对象和变量 - **对象和属性**: Ruby中的一切都是对象,对象...
《Programming Ruby 1.9 The Pragmatic Programmers' Guide》是学习Ruby编程语言的一本经典著作,尤其针对Ruby 1.9版本进行了详细的讲解。这本书由著名的Pragmatic Programmers出版,因其深入浅出的讲解和实用的编程...
Ruby是一种快速发展的激动人心的动态语言,本书是Ruby 1.9和Ruby 2.0这两个最新版本的完整参考指南。Ruby是一种完全面向对象的语言,类似于经典的面向对象语言Smalltalk。与Smalltalk一样,它是动态类型的,但与...
### Rango:Ruby 1.9 上的轻量级网络开发框架 Rango 是一个基于 Ruby 1.9 的轻量级 Web 开发框架,它为开发者提供了灵活且强大的工具来构建网站。与 Sinatra 相比,Rango 更加健壮;而与 Rails 或 Merb 相比,它的...
- **文件读写**:介绍了如何在Ruby中进行文件的读取和写入操作。 - **命令行参数**:演示了如何在脚本中处理命令行输入的参数,增强了程序的交互性和灵活性。 #### 3. **类、对象与变量** 深入探讨了Ruby中的类...
[Pragmatic Bookshelf] Ruby 1.9 & 2.0 编程 (英文版) [Pragmatic Bookshelf] Programming Ruby 1.9 & 2.0 The Pragmatic Programmers' Guide 4th Edition (E-Book) ☆ 出版信息:☆ [作者信息] Dave Thomas , ...
《实用的Ruby编程:针对Ruby 1.9的程序员指南》是Dave Thomas、Chad Fowler与Andy Hunt共同编写的著作,由The Pragmatic Bookshelf出版。本书详细介绍了Ruby 1.9版本的特性和编程实践,对于学习和掌握Ruby语言具有...
### Pragmatic Programming Ruby 1.9:关键知识点解析 #### 标题解析:“Pragmatic.Programming.Ruby.1.9” 此标题表明本书主要介绍的是Ruby 1.9编程语言及其在实用主义编程(Pragmatic Programming)中的应用。...
在处理文本数据时,如读写txt文件,Ruby提供了简洁而直观的API。下面将详细介绍Ruby如何进行txt文件的读写操作。 一、打开和关闭文件 在Ruby中,我们通常使用`File`类的方法来操作文件。读取txt文件时,可以使用`...
Ruby是一种面向对象的脚本语言,由日本的松本行弘(Yukihiro ...同时,实践是检验理解的最好方式,通过实际编写项目或解决编程问题,你的Ruby技能将会得到提升。记得,持续学习和探索是成为熟练Ruby开发者的不二法门。