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

用ruby实现简体中文和繁体中文的相互转化

阅读更多
根据php对简体繁体的转化原理编写而成,可以几行代码就实现ror站点的全部繁体化(或者简体化)
#功能:用ruby实现简体中文和繁体中文的相互转化
#作者:axgle 
#版本:1.0
#授权:GPL(无须经过作者同意即可修改代码,但修改后的代码必须按照GPL协议发布)
#日期:2006-11-25

class String
  
  def to_big5    
      iconv_chinese_by("to_big5.tab")
  end
  
  def to_gb2312
      iconv_chinese_by("to_gb2312.tab")
  end
  
  private
  def iconv_chinese_by(lang_table)
      lang_table=File.join(File.dirname(__FILE__),"lang_table",lang_table)    
      fp=File.open(lang_table,"rb")
      s=self  
      len=s.length-1
      i=0
      while(i<len)   
        c=s[i]
        if c>=160
          n=s[i+1]     
          if c==161 and n==64
            b="  "
          else                
            pos=(c - 160)*510 + (n - 1)*2        
            fp.seek(pos)
            b=fp.read(2)    
          end
          s[i]=b[0]      
          s[i+1]=b[1]  
          i+=1           
         end        
        i+=1     
      end
      fp.close
      return s    
  end
    
end
分享到:
评论
5 楼 healer_kx 2014-04-19  
。。。 。。。还有License
4 楼 pilipala 2006-12-06  
哦 不好意思,理解错了 呵呵

不过 iconv这个东西蛮不错,今天刚看到觉得很爽
就算顺便借光介绍一下喽
3 楼 qiezi 2006-12-06  
pilipala 写道
ruby的iconv库,已经实现了很好的编码转换功能,
如下例:

require 'iconv'
s = ARGV[0] || '汉字'
cov = Iconv.new( 'utf-8', 'gbk')
p cov.iconv(s)

iconv是编码转换,他说的是简繁转换。
2 楼 asalei 2006-12-06  
学习了!
1 楼 pilipala 2006-12-06  
ruby的iconv库,已经实现了很好的编码转换功能,
如下例:

require 'iconv'
s = ARGV[0] || '汉字'
cov = Iconv.new( 'utf-8', 'gbk')
p cov.iconv(s)

相关推荐

    ruby语言帮助文档(简体中文)

    Ruby中的类和模块是构建对象的基础,类用于定义对象的结构和行为,模块则用于组织代码和实现多继承。 3. **方法**:Ruby的方法可以看作是对象的行为,可以定义在类、模块或者对象上。方法调用可以用点操作符(`.`)...

    Ruby-TensorStream用Ruby重新实现TensorFlow

    **Ruby-TensorStream:用Ruby重现实现TensorFlow** Ruby-TensorStream是一个开源项目,旨在为Ruby开发者提供一个类似于Google TensorFlow的深度学习框架。它的核心目标是让Ruby程序员能够利用TensorFlow的强大功能...

    resume 用Ruby技术实现的search 分页的例子

    在Ruby on Rails(ROR)框架中,实现搜索和分页功能是常见的需求,尤其是在构建数据密集型Web应用时。本示例将深入探讨如何利用Ruby技术和Rails的强大特性来完成这一任务。 首先,我们需要理解搜索功能的基础:查询...

    ruby-pingyin ruby中将中文转化成拼音

    ruby-pinyin。现在介绍给大家。 里面自带api。用法也很简单。 在rails 中 把 pinyin.rb 及 dict 放到lib目录中。 在模型中引入文件。 require "pinyin" 按后实例化一个pinyin py = PinYin.instance py.to_...

    ruby教程(中文)

    ruby语言的简体中文教程

    ruby语法基础教程及Ruby教程中文版和安装文件

    至于Ruby教程中文版,它将覆盖更多细节,包括类和模块、异常处理、文件操作、网络编程、Gem(Ruby的包管理系统)的使用等。通过阅读和实践教程中的例子,你可以逐步提升对Ruby的理解和应用能力。 总的来说,Ruby是...

    飞机大战ruby实现

    它提供了图形界面、事件系统和脚本系统,允许开发者用简单的脚本语言(通常是Ruby)编写游戏逻辑。 3. **游戏开发**:游戏开发涉及多个方面,包括游戏设计、编程、美术、音效等。在这个项目中,我们专注于编程部分...

    Ruby入门教程中文PDF 附实例

    Ruby还支持模块(Module),可以用来组织代码和实现多继承的效果。此外,Ruby的块(Block)和 Proc 对象让函数式编程变得简单,例如使用`each`方法遍历数组: ```ruby fruits = ["Apple", "Banana", "Cherry"] ...

    Ruby元编程第二版中文

    Ruby元编程是编程领域中一个深入且强大的主题,它允许程序员在运行时修改或创建代码,极大地提高了灵活性和代码的动态性。这本书“Ruby元编程第二版”专注于讲解Ruby语言的这一独特特性,旨在帮助开发者更好地理解和...

    Ruby-twittercldrrbICU的Ruby实现

    这个库为Ruby开发者提供了一套强大的工具,用于在应用程序中实现多语言支持和文化敏感的文本处理。 首先,我们来了解一下ICU。ICU是一个广泛使用的开源库,它提供了全面的Unicode支持和跨平台的本地化功能。它包含...

    ruby-使用ruby实现的排序算法-sorting.zip

    在"ruby_使用ruby实现的排序算法_sorting.zip"这个资源中,你将找到以上排序算法的详细实现和可能的优化版本,这对于深入理解排序算法以及提高Ruby编程能力非常有帮助。通过学习和实践这些代码,你将能够更好地应对...

    ruby 中文文档 必备资料

    这份"ruby 中文文档 必备资料"压缩包包含了一份非常重要的资源——"ruby中文文档.chm",这是一份详尽的Ruby语言指南,对于学习和精通Ruby编程语言来说是不可或缺的。 首先,Ruby语言的基础知识包括变量、数据类型和...

    如何用Ruby来实现页面性能测试

    标题中的“如何用Ruby来实现页面性能测试”指的是利用Ruby编程语言进行网页性能评估和监控的一种方法。在描述中提到,作者选择了Ruby而非QTP(QuickTest Professional)是因为Ruby具有优于QTP的独特优点,尤其在资源...

    ruby中文文档.chm

    《Ruby编程语言中文文档》是针对初学者和有经验的开发者提供的一份全面而详细的资源,旨在帮助读者理解和掌握Ruby编程语言。这份文档以CHM(Microsoft编写的压缩HTML帮助文件)格式呈现,方便离线查阅。Ruby是一种...

    ruby中文文档中心资料

    这份"ruby中文文档中心资料"包含了丰富的资源,帮助中文用户深入理解并掌握Ruby编程。 首先,"nb60_trans_old_zh_CN"可能指的是Ruby的一个版本,如NetBeans IDE 6.0的中文翻译版,NetBeans是一个流行的开源集成开发...

    ruby中文资源大全

    松本行弘(Matz)是日本一家开源软件公司的程序员,有15年的编程经验。在工作中,他希望有一种比 Perl 强大,比 Python 更面向对象的语言。...本教程内含多部中文ruby介绍和语法参考能作为初中级学习使用。

    Ruby-bladetranslate是一款用ruby打造的简单控制台翻译软件

    Ruby-blade-translate是一款基于Ruby语言开发的轻量级命令行翻译工具,专为那些喜欢在终端环境下工作的开发者设计。它的核心功能是提供一种快速、便捷的方式,在不同的文本之间进行翻译,而无需离开命令行界面。这个...

    ruby中文教程,从基础到深入的让你学习ruby

    Ruby是一种面向对象的、动态...通过这个中文教程,你将掌握其基本语法,理解面向对象编程的概念,熟悉常用的类库和工具,并能够运用Ruby进行实际的项目开发。无论你是初学者还是有经验的开发者,都能从这个教程中受益。

    用ruby读excel文件生成xml文件

    标题 "用ruby读excel文件生成xml文件" 描述的是一项技术任务,即使用Ruby编程语言来处理Excel文件,并将其内容转换成XML格式。这在数据迁移、格式转换或与不支持Excel格式的应用程序进行数据交换时非常有用。Ruby库...

    PROGRAMMING+RUBY中文版

    PROGRAMMING+RUBY中文版 PROGRAMMING+RUBY中文版 PROGRAMMING+RUBY中文版

Global site tag (gtag.js) - Google Analytics