當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Ruby CSV.instance用法及代碼示例

本文簡要介紹ruby語言中 CSV.instance 的用法。

用法

instance(string, **options)
instance(io = $stdout, **options)
instance(string, **options) {|csv| ... }
instance(io = $stdout, **options) {|csv| ... }

創建或檢索緩存的 CSV 對象。有關參數和選項,請參閱 CSV.new

此 API 不是Ractor-safe。

沒有給出塊,返回一個 CSV 對象。

第一次調用 instance 創建並緩存一個 CSV 對象:

s0 = 's0'
csv0 = CSV.instance(s0)
csv0.class # => CSV

隨後使用 same stringio 調用 instance 檢索相同的緩存對象:

csv1 = CSV.instance(s0)
csv1.class # => CSV
csv1.equal?(csv0) # => true # Same CSV object

隨後使用 different stringio 調用 instance 創建並緩存 different CSV 對象。

s1 = 's1'
csv2 = CSV.instance(s1)
csv2.equal?(csv0) # => false # Different CSV object

所有緩存的對象仍然可用:

csv3 = CSV.instance(s0)
csv3.equal?(csv0) # true # Same CSV object
csv4 = CSV.instance(s1)
csv4.equal?(csv2) # true # Same CSV object

當給定一個塊時,使用創建或檢索的 CSV 對象調用該塊;返回塊的返回值:

CSV.instance(s0) {|csv| :foo } # => :foo

相關用法


注:本文由純淨天空篩選整理自ruby-lang.org大神的英文原創作品 CSV.instance。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。