当前位置: 首页 > 文档资料 > Ruby 参考手册 >

附加库

优质
小牛编辑
131浏览
2023-12-01

在Ruby中, 可以使用库来添加新的类,模块或方法. 下列就是标准发布包中附加库的一览表. 读取库时需要使用require或load.

附加库一览表

文本 /文件 /网络 /输入输出 /日语 /数学 /数据库 /画面控制/CUI /GUI /日期·时间 /多线程·同步 /Unix /MS Windows /正则表达式 /GC /Design Pattern /开发工具 /命令行 /其他

  • English.rb 给特殊变量 $! 等添加英文别名($ERROR_INFO 等)
  • Env.rb该库已经停用(obsolete)
  • base64.rb 处理Base64编码的模块
  • benchmark.rb ruby 1.7 特性
  • bigdecimal.so 可变长度浮点数运算 ruby 1.8 特性
  • bigdecimal/jacobian.rb
  • bigdecimal/ludcmp.rb
  • bigdecimal/newton.rb
  • bigdecimal/nlsolve.rb
  • bigdecimal/utils.rb
  • cgi/session.rb CGI会话管理
    • CGI::Session
  • cgi/session/pstore.rb
    • CGI::Session::PStore
  • cgi-lib.rb该库已经停用(obsolete)(请使用cgi.rb)
  • cgi.rb 辅助生成CGI
    • CGI
  • complex.rb 复数类
    • Complex
  • csv.rb CSV(Comma Separated Values)库 ruby 1.8 特性
  • curses.so 终端操作库 curses 的接口
    • Curses 模块
    • Curses::Window 类
  • date.rb 日期类
    • Date
    • DateTime
  • date2.rb该库已经停用(obsolete)(请使用date.rb)
  • dbm.so 可将ndbm用作哈希表的库
    • DBM
  • debug.rb Ruby 调试器
  • delegate.rb 支持委托的类
    • Delegator
      • SimpleDelegator
  • digest.so 消息摘要库 请参考[ruby-src:ext/digest/digest.txt.ja]
  • digest/md5.so
  • digest/rmd160.so
  • digest/sha1.so
  • digest/sha2.so
    • Digest::Base
      • Digest::MD5
      • Digest::RMD160
      • Digest::SHA1
      • Digest::SHA256
      • Digest::SHA384
      • Digest::SHA512
  • dl.so [ruby-src:ext/dl/doc/dl.txt]ruby 1.7 特性
  • dl/import.rb 请参考dl.so 。ruby 1.7 特性
  • dl/struct.rb 请参考dl.so 。ruby 1.7 特性
  • dl/types.rb 请参考dl.so 。ruby 1.7 特性
  • dl/win32.rb 用来代替Win32API。ruby 1.7 特性
  • drb.rb 分布式 Ruby (dRuby) ruby 1.8 特性
  • e2mmap.rb 异常类和消息的映象
    • Exception2MessageMapper
  • enumerator.so
    • Enumerable::Enumerator
  • erb.rb 嵌入 Ruby (ERB) ruby 1.8 特性
    • ERB
  • eregex.rb 可使用`|', `&'操作符将2个正则表达式连接起来
  • etc.so 操作/etc/passwd等的库
    • Etc
  • expect.rb 在脚本中控制交互程序
  • fcntl.so 该模块中囊括了fcntl(2)中用到的常数
    • Fcntl
  • fileutils.rb 文件操作utility (ftools.rb 的升级版) ruby 1.7 特性
    • module FileUtils
    • module FileUtils::Verbose
    • module FileUtils::NoWrite
  • final.rb该库已经停用(obsolete)(已被纳入系统. 在1.8中,该库已被取消)
  • finalize.rb
    • Finalizer
  • find.rb 文件搜索模块
    • Find
  • forwardable.rb 向类中定义方法委托的功能(请参考[ruby-src:doc/forwardable.rd.ja])
    • Forwardable
    • SingleForwardable
  • ftools.rb 文件操作utility(旧)
  • ftplib.rb该库已经停用(obsolete)(请使用net/ftp.rb. 在1.8中,该库已被取消)
  • gdbm.so 将gdbm (GNU dbm)用作哈希表的库
    • GDBM
  • getoptlong.rb 命令行选项的解析 请参考<URL:http://www.sra.co.jp/people/m-kasahr/ruby/getoptlong/>
  • getopts.rb 命令行选项的解析
  • gserver.rb Ruby Generic Server ruby 1.8 特性
  • iconv.so 字符串编码转换库 [ruby-src:ext/iconv/iconv.c]ruby 1.7 特性
    • Iconv
  • importenv.rb 以操作全局变量的方式来处理环境变量
  • io/nonblock.rb IO 类的扩展(添加与nonblock模式相关的方法)
  • io/wait.so IO 类的扩展(添加负责等待IO输入的方法)
  • ipaddr.rb IP地址类(IPAddr) ruby 1.8 特性
  • irb.rb Interactive Ruby (Ruby 的交互界面) 请参考[ruby-src:doc/irb/irb.rd.ja], [ruby-src:doc/irb/irb-tools.rd.ja]
  • jcode.rb 使String类支持日语
  • kconv.rb 汉字编码转换
    • Kconv
  • mailread.rb 从mail中获取信息
    • Mail
  • mathn.rb
  • matrix.rb 矩阵类
    • Matrix
    • Vector
  • md5.rb该库已经停用(obsolete)(请使用digest/md5.so)
  • mkmf.rb 制作扩展库的工具
  • monitor.rb
  • multi-tk.rb 支持多个Tcl解释器的Ruby/Tk ruby 1.8 特性
  • mutex_m.rb
  • net/ftp.rb
    • Net::FTP
  • net/ftptls.rb
  • net/http.rb
    • class Net::HTTP
    • class Net::HTTPRequest
    • class Net::HTTPResponse
  • net/https.rb
  • net/imap.rb
  • net/pop.rb
    • Net::POP3 class
    • Net::APOP
    • Net::POPMail
  • net/smtp.rb
    • class Net::SMTP
  • net/telnet.rb
    • Net::Telnet
  • net/telnets.rb
  • nkf.so 日语字符代码编码转换
    • NKF
  • observer.rb Ruby中的Observer Pattern
    • Observable
  • open-uri.rb open() 的 URI支持扩展 ruby 1.8 特性
  • open3.rb
    • Open3
  • openssl.rb Ruby/OpenSSL ruby 1.8 特性
  • optparse.rb 命令行选项的解析 ruby 1.7 特性
  • ostruct.rb Python 式的“attr on write”Struct
    • OpenStruct
  • parsearg.rb 命令行选项的解析(请参考getopts.rb)
  • parsedate.rb 日期格式的解析
    • ParseDate
  • pathname.rb 路径名类 ruby 1.8 特性
  • ping.rb 验证数据包是否到达主机
    • Ping
  • pp.rb Pretty-printer ruby 1.7 特性
    • PP
  • prettyprint.rb PrettyPrint ruby 1.7 特性
    • PrettyPrint
  • profile.rb PROFILER
  • profiler.rb ruby 1.7 特性
  • pstore.rb 对象永久化
    • PStore
  • pty.so 处理伪终端(Pseudo tTY)的模块
    • PTY
  • racc/parser.rb Racc 运行时库
  • racc/cparse.so
  • rational.rb
    • Rational
  • rbconfig.rb Ruby 解释器的设置信息
    • Config
  • readbytes.rb
  • readline.so GNU Readline 接口
    • Readline
  • resolv-replace.rb 在处理Socket相关类名时使用resolv.rb
  • resolv.rb Ruby版Resolver
    • Resolv
  • rexml/rexml.rb XML parser ruby 1.8 特性
    • REXML
  • rubyunit.rb [RAA:RubyUnit]兼容库 ruby 1.8 特性
    • RUNIT::Assert
  • scanf.rb ruby 1.8 特性
  • sdbm.so
    • SDBM
  • set.rb 有限集 ruby 1.7 特性
    • Set ruby 1.7 特性
  • sha1.rb该库已经停用(obsolete)(请使用digest/sha1.so)
  • shell.rb 请参考[ruby-src:doc/shell.rd.ja]
  • shellwords.rb
    • Shellwords
  • singleton.rb Ruby中的Singleton Pattern
    • Singleton
  • socket.so socket扩展库
    • BasicSocket
      • IPSocket
        • TCPSocket
          • TCPServer
          • SOCKSSocket
        • UDPSocket
      • UNIXSocket
        • UNIXServer
      • Socket
    • Socket::Constants
  • stringio.so 将字符串伪装成IO ruby 1.7 特性
    • StringIO
  • strscan.so 高速Scanner ruby 1.7 特性
    • class StringScanner
  • sync.rb
    • Sync_m
    • Synchronizer_m
    • Sync
    • Synchronizer
  • syslog.so
    • Syslog
    • Syslog::Constants
  • tcltk.rb Tcl/Tk 库 (与tk.rb不同,它直接调用Tcl/Tk)
  • telnet.rb该库已经停用(obsolete)(请使用net/telnet.rb。在1.8中,该库已被删除)
  • tempfile.rb 生成临时文件
    • Tempfile
  • test/unit.rb unit测试 ruby 1.8 特性
    • Test::Unit
  • thread.rb 与线程相关的utility
    • ConditionVariable
    • Mutex
    • Queue
      • SizedQueue
  • thwait.rb
    • ThreadsWait
    • ThWait
  • time.rb 字符串和Time对象的变换
  • timeout.rb 处理超时的方法 timeout
    • TimeoutError
  • tk.rb Ruby/Tk 请参考<URL:http://ns103.net/~arai/ruby/rubytk.html.gz>
  • tmpdir.rb 返回临时目录 ruby 1.8 特性
  • tracer.rb Ruby 的tracer
    • Tracer
  • tsort.rb 拓扑排序和强连接成分 ruby 1.7 特性
    • TSort
  • un.rb 类似Unix命令的文件操作utility ruby 1.8 特性
  • uri.rb URI 库
  • uri/common.rb
  • uri/ftp.rb
  • uri/generic.rb
  • uri/http.rb
  • uri/https.rb
  • uri/ldap.rb
  • uri/mailto.rb
  • weakref.rb 生成可被GC回收的"弱"reference
    • class WeakRef
    • class WeakRef::RefError
  • webrick.rb WEB server toolkit
  • Win32API.so 调用Win32 API的类 (win32 专用) 以后将用 dl/win32.rb 来取代它
    • Win32API
  • win32ole.so [ruby-src:ext/win32ole/doc/win32ole.rd]ruby 1.7 特性
    • WIN32OLE
  • win32/registry.rb ruby 1.7 特性
    • Win32::Registry
  • xmlrpc/base64.rb ruby 1.8 特性
  • xmlrpc/client.rb ruby 1.8 特性
  • xmlrpc/config.rb ruby 1.8 特性
  • xmlrpc/create.rb ruby 1.8 特性
  • xmlrpc/datetime.rb ruby 1.8 特性
  • xmlrpc/httpserver.rb ruby 1.8 特性
  • xmlrpc/marshal.rb ruby 1.8 特性
  • xmlrpc/parser.rb ruby 1.8 特性
  • xmlrpc/server.rb ruby 1.8 特性
  • xmlrpc/utils.rb ruby 1.8 特性
    • XMLRPC
  • yaml.rb YAML ruby 1.8 特性
  • zlib.so 字符串压缩·扩展 ruby 1.8 特性

范畴分类

文本

  • base64.rb 处理Base64编码的模块
  • csv.rb CSV(Comma Separated Values)库 ruby 1.8 特性
  • digest.so 消息摘要库 请参考[ruby-src:ext/digest/digest.txt.ja]
  • digest/md5.so
  • digest/rmd160.so
  • digest/sha1.so
  • digest/sha2.so
  • erb.rb 嵌入Ruby(ERB) ruby 1.8 特性
  • iconv.so 字符串编码转换库 [ruby-src:ext/iconv/iconv.c]ruby 1.7 特性
  • mailread.rb 从mail中获取信息
  • shellwords.rb
  • stringio.so 将字符串伪装成IO ruby 1.7 特性
  • strscan.so 高速Scanner ruby 1.7 特性
  • yaml.rb YAML ruby 1.8 特性
  • zlib.so 字符串压缩·扩展 ruby 1.8 特性

文件

  • ftools.rb 文件操作utility(旧)
  • fileutils.rb 文件操作utility (ftools.rb 的升级版) ruby 1.7 特性
  • find.rb 文件搜索模块
  • io/nonblock.rb IO 类的扩展(添加与nonblock模式相关的方法)
  • io/wait.so IO 类的扩展(添加负责等待IO输入的方法)
  • pathname.rb 路径名类 ruby 1.8 特性
  • tempfile.rb 生成临时文件
  • tmpdir.rb 返回临时目录 ruby 1.8 特性
  • un.rb 类似Unix命令的文件操作utility ruby 1.8 特性

网络

  • cgi/session.rb CGI会话管理
  • cgi/session/pstore.rb
  • cgi.rb 辅助生成CGI
  • drb.rb 分布式 Ruby (dRuby) ruby 1.8 特性
  • gserver.rb Ruby Generic Server ruby 1.8 特性
  • ipaddr.rb IP地址类(IPAddr) ruby 1.8 特性
  • net/ftp.rb
  • net/ftptls.rb
  • net/http.rb
  • net/https.rb
  • net/imap.rb
  • net/pop.rb
  • net/smtp.rb
  • net/telnet.rb
  • net/telnets.rb
  • openssl.rb Ruby/OpenSSL ruby 1.8 特性
  • open-uri.rb open() 的 URI支持扩展 ruby 1.8 特性
  • ping.rb 验证数据包是否到达主机
  • resolv-replace.rb 在处理Socket相关类名时使用resolv.rb
  • resolv.rb Ruby版Resolver
  • socket.so socket扩展库
  • webrick.rb WEB server toolkit
  • xmlrpc/base64.rb XML-RPC (remote procedure calls over HTTP using XML) for Ruby ruby 1.8 特性
  • xmlrpc/client.rb ruby 1.8 特性
  • xmlrpc/config.rb ruby 1.8 特性
  • xmlrpc/create.rb ruby 1.8 特性
  • xmlrpc/datetime.rb ruby 1.8 特性
  • xmlrpc/httpserver.rb ruby 1.8 特性
  • xmlrpc/marshal.rb ruby 1.8 特性
  • xmlrpc/parser.rb ruby 1.8 特性
  • xmlrpc/server.rb ruby 1.8 特性
  • xmlrpc/utils.rb ruby 1.8 特性

输入输出

  • open3.rb
  • readbytes.rb
  • scanf.rb ruby 1.8 特性

日语

  • jcode.rb 使String类支持日语
  • kconv.rb 汉字编码转换
  • nkf.so 日语字符代码编码转换

数学

  • bigdecimal.so 可变长度浮点数运算 ruby 1.8 特性
  • bigdecimal/jacobian.rb
  • bigdecimal/ludcmp.rb
  • bigdecimal/newton.rb
  • bigdecimal/nlsolve.rb
  • bigdecimal/utils.rb
  • complex.rb 复数类
  • mathn.rb
  • matrix.rb 矩阵类
  • rational.rb
  • set.rb 有限集 ruby 1.7 特性

数据库

  • dbm.so 可将ndbm用作哈希表的库
  • gdbm.so 将gdbm (GNU dbm)用作哈希表的库
  • pstore.rb 对象永久化
  • sdbm.so

画面控制/CUI

  • curses.so 终端操作库 curses 的接口
  • expect.rb 在脚本中控制交互程序
  • fcntl.so 该模块中囊括了fcntl(2)中用到的常数
  • irb.rb Interactive Ruby (Ruby 的交互界面)
  • pty.so 处理伪终端(Pseudo tTY)的模块
  • readline.so GNU Readline 接口
  • shell.rb 请参考[ruby-src:doc/shell.rd.ja]

GUI

  • multi-tk.rb 支持多个Tcl解释器的Ruby/Tk ruby 1.8 特性
  • tk.rb Ruby/Tk <URL:http://ns103.net/~arai/ruby/rubytk.html.gz>

日期·时间

  • date.rb 日期类
  • parsedate.rb 日期格式的解析
  • time.rb 字符串和Time对象的变换

多线程·同步

  • monitor.rb
  • mutex_m.rb
  • sync.rb
  • thread.rb 与线程相关的utility
  • thwait.rb

Unix

  • etc.so 操作/etc/passwd等的库
  • syslog.so UNIX syslog 接口

MS Windows

  • Win32API.so 调用Win32 API的类 (win32 专用) 以后将用 dl/win32.rb 来取代它
  • win32ole.so [ruby-src:ext/win32ole/doc/win32ole.rd]ruby 1.7 特性
  • win32/registry.rb ruby 1.7 特性

正则表达式

  • eregex.rb 可使用`|', `&'操作符将2个正则表达式连接起来

GC

  • finalize.rb
  • weakref.rb 生成可被GC回收的"弱"reference

Design Pattern

  • delegate.rb 支持委托的类
  • forwardable.rb 向类中定义方法委托的功能(请参考[ruby-src:doc/forwardable.rd.ja])
  • observer.rb Ruby中的Observer Pattern
  • singleton.rb Ruby中的Singleton Pattern

开发工具

  • benchmark.rb ruby 1.7 特性
  • debug.rb Ruby 调试器
  • mkmf.rb 制作扩展库的工具
  • profile.rb PROFILER
  • profiler.rb ruby 1.7 特性
  • rbconfig.rb Ruby 解释器的设置信息
  • rubyunit.rb [RAA:RubyUnit]兼容库 ruby 1.8 特性
  • test/unit.rb unit测试 ruby 1.8 特性
  • tracer.rb Ruby 的tracer

命令行

  • getoptlong.rb 命令行选项的解析
  • getopts.rb 命令行选项的解析
  • parsearg.rb 命令行选项的解析(getopts.rb)
  • optparse.rb 命令行选项的解析 ruby 1.7 特性

其他

  • English.rb 给特殊变量 $! 等添加英文别名($ERROR_INFO 等)
  • dl.so [ruby-src:ext/dl/doc/dl.txt]ruby 1.7 特性
  • dl/import.rb 请参考dl.so 。ruby 1.7 特性
  • dl/struct.rb 请参考dl.so 。ruby 1.7 特性
  • dl/types.rb 请参考dl.so 。ruby 1.7 特性
  • dl/win32.rb 用来代替Win32API。ruby 1.7 特性
  • e2mmap.rb 异常类和消息的映象
  • enumerator.so
  • importenv.rb 以操作全局变量的方式来处理环境变量
  • ostruct.rb Python 式的“attr on write”Struct
  • pp.rb Pretty-printer ruby 1.7 特性
  • prettyprint.rb PrettyPrint ruby 1.7 特性
  • racc/parser.rb Racc 运行时库
  • racc/cparse.so
  • rexml/rexml.rb XML parser ruby 1.8 特性
  • timeout.rb 处理超时的方法 timeout
  • tsort.rb 拓扑排序和强连接成分 ruby 1.7 特性
  • uri.rb URI 库
  • uri/common.rb
  • uri/ftp.rb
  • uri/generic.rb
  • uri/http.rb
  • uri/https.rb
  • uri/ldap.rb
  • uri/mailto.rb