濮阳杆衣贸易有限公司

主頁 > 知識庫 > 淺析Ruby中的DATA對象

淺析Ruby中的DATA對象

熱門標簽:白銀外呼paas系統(tǒng) 徐州網絡外呼系統(tǒng)哪個好 滴滴外呼系統(tǒng) 常德電銷平臺外呼系統(tǒng)軟件價格 地圖標注賺錢項目注冊 百度地圖標注自定義圖片 電銷機器人廠商代理 高德地圖標注客服 湖州u友防封電銷卡

這段代碼能運行嗎? 這個DATA是什么東西?

require 'erb'

data = DATA.read
max = 15_000
title = "hello world!"
content = "hello world!\n" * 10

max.times{
 ERB.new(data).result(binding)
}

__END__

html>
 head> %= title %> /head>
 body>
  h1> %= title %> /h1>
  p>
   %= content %>
  /p>
 /body>
/html>

這個神奇的DATA是一個IO對象,讀取__END__之后內容。 有一點需要注意的是DATA.read會將__END__之后的內容一次性讀出,由于IO讀取的特性,當?shù)?二次DATA.read的時候內容就會為空,如果需要第二次讀取,那么先要執(zhí)行DATA.rewind。

有的時候我們寫一個腳本來做一些自動化的工作,需要預先讀取一個文件的內容,作為輸入或者作為模版,我們可以先把這部分內容附到__END__后,然后用DATA來讀取,因為它是標準的IO對象,我們可以像處理普通文件一樣處理__END__后的內容,如上面的代碼所示,用來存儲ERB內容作為模版,然后再進行處理,非常的方便。

您可能感興趣的文章:
  • Ruby包管理器gem常用命令
  • Ruby類實例變量、類實例方法和類變量、類方法的區(qū)別
  • 深入理解Ruby中的block概念

標簽:張家界 梧州 永州 荊門 普洱 三沙 遼寧 公主嶺

巨人網絡通訊聲明:本文標題《淺析Ruby中的DATA對象》,本文關鍵詞  淺析,Ruby,中的,DATA,對象,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《淺析Ruby中的DATA對象》相關的同類信息!
  • 本頁收集關于淺析Ruby中的DATA對象的相關信息資訊供網民參考!
  • 推薦文章
    新安县| 赞皇县| 德惠市| 泰顺县| 成武县| 安义县| 华池县| 汤原县| 平凉市| 柞水县| 漳平市| 本溪市| 乐业县| 阿瓦提县| 平舆县| 溆浦县| 固原市| 武邑县| 诏安县| 无棣县| 天门市| 明光市| 南康市| 滕州市| 深泽县| 化德县| 西城区| 临泽县| 巴塘县| 辽阳市| 海林市| 泊头市| 白玉县| 开鲁县| 日喀则市| 林口县| 墨玉县| 石狮市| 安乡县| 张家港市| 平乐县|