Class: ZOpen::File
- Inherits:
-
SimpleDelegator
- Object
- SimpleDelegator
- ZOpen::File
- Defined in:
- lib/zopen.rb
Overview
A possible compressed file.
This class delegates all functions to its underlying IO-like object, which should provide the typical read/write methods. However, many compressed files to not allow random access, so methods like seek might not be available.
Class Method Summary collapse
-
.read(filename) ⇒ String
Return the content of a file.
-
.write(filename, text) ⇒ Object
Write a string to a file.
Instance Method Summary collapse
-
#initialize(filename, mode = nil) {|File| ... } ⇒ File
constructor
Open file.
Constructor Details
#initialize(filename, mode = nil) {|File| ... } ⇒ File
Open file.
The only two open modes that are guaranteed to be supported are ‘r’ and ‘w’ for reading and writing, respectively.
If a code block is given the block is called with the new file as parameter and the file is closed when the block returns.
115 116 117 118 119 120 121 |
# File 'lib/zopen.rb', line 115 def initialize(filename, mode=nil) super(openfile(filename, mode)) if block_given? yield self close end end |
Class Method Details
.read(filename) ⇒ String
Return the content of a file.
127 128 129 |
# File 'lib/zopen.rb', line 127 def self.read(filename) new(filename, 'r') { |f| return f.read } end |
.write(filename, text) ⇒ Object
Write a string to a file.
135 136 137 |
# File 'lib/zopen.rb', line 135 def self.write(filename, text) new(filename, 'w') { |f| f.write text } end |