您所在的位置: 首页 > 操作系统 > 开源技术 >

Ruby程序设计语言之输入输出和标准库

http://os.51cto.com  2006-05-08 09:45    天极  我要评论(0)
  • 摘要:本文继续介绍Ruby程序设计语言的输入输出和标准库,编写Ruby代码所有这些和其它处理输入和输出的方法都定义于Kernel模块中……
  • 标签:Ruby

输入输出

在所有的本系列文章中,在编写Ruby代码时都使用了大量的Ruby标准输出方法。其中,最为常用的是print和puts方法,有关其使用细节不再赘述。

所有这些和其它处理输入和输出的方法都定义于Kernel模块中。这个Kernel模块又被包含在Object类中。因此,Kernel的方法出现在每一个对象中。在输出方面,Kernel定义了print,printf,putc和IO类和两个子类(File和BasicSocket)-它们允许读写文件和套接字。BasicSocket是套接字库的一部分并且将在以后讨论它。包含了FileTest模块的File类,提供了许多方法来操作系统文件和目录。从Kernel中使用的用于读写到标准输入/输出机制的方法被进一步重用于File实例中的读写操作。下面是一个代码示例-它把一些名字写入一个新建的文件中,然后再把这些名字读回到一个数组中。

customers=%w[Jim Kevin Davin Andrew]
outFile = File.new("c:\\examples\\test\\customers.txt", "w")
customers.each{|customer| outFile.puts(customer)}
outFile.close
inFile= File.new("c:\\examples\\customers.txt", "r")
readCustomers=inFile.readlines
readCustomers.each{|customer| puts customer}
inFile.close

标准库

Ruby除了提供大量内置的类和模块外,它还提供了一定数目的标准库。这些库不是自动地成为你可以利用的Ruby类,模块,方法的一部分。你必须先在你的文件的顶部使用require(或load)关键字来使用库中的类或模块。在前一节中,我曾提到一个库-套接字库,它包含了大量的Ruby类(包括BasicSocket),以便于访问网络服务。但是在Ruby下载中一同提供了一整套其它的库。你可以查看一下你的Ruby下载中的lib目录,这个目录下应该存在大量的你的Ruby程序需要使用的库。

有关这些库的不好的一点是,没有大量的有关于这些类的参考文档。你可以在网站http://www.ruby-doc.org/stdlib/上找到一系列标准库及其包含类和模块的文件。即使是这些文档也指出:

"你需要明白,在表格中粗体的库具有良好的文档,而斜体的库没有文档。"

这就是Ruby的现状。你可能想说,Ruby是一个不可思议地丰富而有力的语言并且内置了许多构建我们的应用程序需要的功能,但是文档仍然有点不足。还好,现在已经有不少的人在努力改进Ruby的文档和支持。现在有不少的Ruby论坛已经倔起,并且随着每一个新版本的发行,文档都将有一定的改进-当然,这也是最近它备受关注的结果。然而,帮助文档仍然会成为这种语言挫败人心的一个因素。


Ruby实用开发手册
微软 Windows 7 技术前瞻
DNS服务器安装优化全攻略
Hyper-V 虚拟化技术专题
虚拟化的“赤壁之战”
 
 验证码: (点击刷新验证码)   匿名发表
  • Linux C编程实战

  • 作者:童永清
  • 本书系统地介绍了在Linux平台下用C语言进行程序开发的过程,集趣味性、实战性于一体的160多段代码实例,帮助读者快速掌握在Linu..
Copyright©2005-2008 51CTO.COM 版权所有