Ruby程序設(shè)計語言快速入門(八)--------之輸入輸出和標(biāo)準(zhǔn)庫
輸入輸出在所有的本系列文章中,在編寫Ruby代碼時都使用了大量的Ruby標(biāo)準(zhǔn)輸出方法。其中,最為常用的是print和puts方法,有關(guān)其使用細(xì)節(jié)不再贅述。
所有這些和其它處理輸入和輸出的方法都定義于Kernel模塊中。這個Kernel模塊又被包含在Object類中。因此,Kernel的方法出現(xiàn)在每一個對象中。在輸出方面,Kernel定義了print,printf,putc和IO類和兩個子類(File和BasicSocket)-它們允許讀寫文件和套接字。BasicSocket是套接字庫的一部分并且將在以后討論它。包含了FileTest模塊的File類,提供了許多方法來操作系統(tǒng)文件和目錄。從Kernel中使用的用于讀寫到標(biāo)準(zhǔn)輸入/輸出機制的方法被進一步重用于File實例中的讀寫操作。下面是一個代碼示例-它把一些名字寫入一個新建的文件中,然后再把這些名字讀回到一個數(shù)組中。
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
標(biāo)準(zhǔn)庫
Ruby除了提供大量內(nèi)置的類和模塊外,它還提供了一定數(shù)目的標(biāo)準(zhǔn)庫。這些庫不是自動地成為你可以利用的Ruby類,模塊,方法的一部分。你必須先在你的文件的頂部使用require(或load)關(guān)鍵字來使用庫中的類或模塊。在前一節(jié)中,我曾提到一個庫-套接字庫,它包含了大量的Ruby類(包括BasicSocket),以便于訪問網(wǎng)絡(luò)服務(wù)。但是在Ruby下載中一同提供了一整套其它的庫。你可以查看一下你的Ruby下載中的lib目錄,這個目錄下應(yīng)該存在大量的你的Ruby程序需要使用的庫。
有關(guān)這些庫的不好的一點是,沒有大量的有關(guān)于這些類的參考文檔。你可以在網(wǎng)站http://www.ruby-doc.org/stdlib/上找到一系列標(biāo)準(zhǔn)庫及其包含類和模塊的文件。即使是這些文檔也指出:
"你需要明白,在表格中粗體的庫具有良好的文檔,而斜體的庫沒有文檔。"
這就是Ruby的現(xiàn)狀。你可能想說,Ruby是一個不可思議地豐富而有力的語言并且內(nèi)置了許多構(gòu)建我們的應(yīng)用程序需要的功能,但是文檔仍然有點不足。還好,現(xiàn)在已經(jīng)有不少的人在努力改進Ruby的文檔和支持。現(xiàn)在有不少的Ruby論壇已經(jīng)倔起,并且隨著每一個新版本的發(fā)行,文檔都將有一定的改進-當(dāng)然,這也是最近它備受關(guān)注的結(jié)果。然而,幫助文檔仍然會成為這種語言挫敗人心的一個因素。
posted on 2006-06-19 12:17 nbt 閱讀(435) 評論(2) 編輯 收藏 所屬分類: Ruby On Railse技術(shù)