84件ヒット
[1-84件を表示]
(0.037秒)
種類
- 特異メソッド (60)
- 文書 (12)
- インスタンスメソッド (12)
キーワード
- Marshal フォーマット (12)
- binwrite (12)
- read (36)
検索結果
先頭5件
-
Pathname
# binread(*args) -> String | nil (18147.0) -
IO.binread(self.to_s, *args)と同じです。
...IO.binread(self.to_s, *args)と同じです。
//emlist[例][ruby]{
require "pathname"
pathname = Pathname("testfile")
pathname.binread # => "This is line one\nThis is line two\nThis is line three\nAnd so on...\n"
pathname.binread(20) # => "This is line one\nThi"
pathname.binread(2......0, 10) # => "ne one\nThis is line "
//}
@see IO.binread... -
IO
. binread(path , length = nil , offset = 0) -> String | nil (18125.0) -
path で指定したファイルを open し、offset の所まで seek し、 length バイト読み込みます。
...ine two\nThis is line three\nAnd so on...\n")
IO.binread("testfile") # => "This is line one\nThis is line two\nThis is line three\nAnd so on...\n"
IO.binread("testfile", 20) # => "This is line one\nThi"
IO.binread("testfile", 20, 10) # => "ne one\nThis is line "
//}
@see IO.read... -
Marshal フォーマット (54.0)
-
Marshal フォーマット フォーマットバージョン 4.8 を元に記述しています。
...lass Foo < Array # (or String, Regexp, Hash)
def initialize(obj)
@foo = false
super(obj)
end
end
p Marshal.dump(Foo.new([true])).unpack("x2 a a a c a3 aca caca4 a")
# => ["I", "C", ":", 8, "Foo", "[", 6, "T", 6, ":", 9, "@foo", "F"]
//}
==== その他
実装上内部構造が異なる......タンス変数あり][ruby]{
class Foo
def initialize
@foo = :bar
@one = 1
end
end
p Marshal.dump(Foo.new).unpack("x2 a a c a3 c aca4 aca3 aca4 ac")
# => ["o", ":", 8, "Foo", 7,
# ":", 9, "@foo", ":", 8, "bar",
# ":", 9, "@one", "i", 6]
//}
=== Float
'f' で始まるデータ......le Bar
@bar = 1
end
p Bar.instance_eval { @bar } # => 1
File.open('testfile', 'wb') do |f|
Marshal.dump(Bar, f)
end
# 別プログラム相当にするため remove_const
Object.send :remove_const, :Bar
module Bar
end
p bar = Marshal.load(File.binread('testfile'))
p bar.instance_eval { @bar }... -
IO
. read(path , **opt) -> String | nil (48.0) -
path で指定されたファイルを offset 位置から length バイト分読み込んで返します。
...の出力を読み取ります。
@param path ファイル名を表す文字列か "|コマンド名" を指定します。
@param length 読み込む長さを整数で指定します。nil であるか省略した場合には、EOF まで読み込みます。
@param offset 読み込みを始め......定します。
@param opt ファイル path を open する時に使われるオプションをキーワード引数で指定します。
@raise Errno::EXXX path のオープン、offset 位置への設定、ファイルの読み込みに失敗した場合に発生します。
@raise ArgumentErr......る引数を配列で指定します。
これらの他、 :external_encoding など
IO.open のオプション引数が指定できます。
@see IO.binread
例:
IO.read(empty_file) #=> ""
IO.read(empty_file, 1) #=> nil
IO.read(one_byte_file, 0, 10) #=> ""
IO.read... -
IO
. read(path , length = nil , **opt) -> String | nil (48.0) -
path で指定されたファイルを offset 位置から length バイト分読み込んで返します。
...の出力を読み取ります。
@param path ファイル名を表す文字列か "|コマンド名" を指定します。
@param length 読み込む長さを整数で指定します。nil であるか省略した場合には、EOF まで読み込みます。
@param offset 読み込みを始め......定します。
@param opt ファイル path を open する時に使われるオプションをキーワード引数で指定します。
@raise Errno::EXXX path のオープン、offset 位置への設定、ファイルの読み込みに失敗した場合に発生します。
@raise ArgumentErr......る引数を配列で指定します。
これらの他、 :external_encoding など
IO.open のオプション引数が指定できます。
@see IO.binread
例:
IO.read(empty_file) #=> ""
IO.read(empty_file, 1) #=> nil
IO.read(one_byte_file, 0, 10) #=> ""
IO.read... -
IO
. read(path , length = nil , offset = 0 , **opt) -> String | nil (48.0) -
path で指定されたファイルを offset 位置から length バイト分読み込んで返します。
...の出力を読み取ります。
@param path ファイル名を表す文字列か "|コマンド名" を指定します。
@param length 読み込む長さを整数で指定します。nil であるか省略した場合には、EOF まで読み込みます。
@param offset 読み込みを始め......定します。
@param opt ファイル path を open する時に使われるオプションをキーワード引数で指定します。
@raise Errno::EXXX path のオープン、offset 位置への設定、ファイルの読み込みに失敗した場合に発生します。
@raise ArgumentErr......る引数を配列で指定します。
これらの他、 :external_encoding など
IO.open のオプション引数が指定できます。
@see IO.binread
例:
IO.read(empty_file) #=> ""
IO.read(empty_file, 1) #=> nil
IO.read(one_byte_file, 0, 10) #=> ""
IO.read... -
IO
. binwrite(path , string , offset=nil) -> Integer (36.0) -
path で指定されるファイルを開き、string を書き込み、 閉じます。
...ークします。
offset を指定しないと、書き込みの末尾でファイルを
切り捨てます。
@param path ファイル名文字列
@param string 書き込む文字列
@param offset 書き込み開始位置
//emlist[例][ruby]{
# 8x8の真っ白なPNG画像データ。
png = 'iVB......00 00 0d 49 48 44 52
# binwriteを使用した場合: どの環境でも正しく保存できる。
IO.binwrite('white.binmode.png', png)
puts IO.binread('white.binmode.png', 16).unpack('C*').map {|c| '%02x' % c }.join(' ')
# => 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52
# binwriteを使用.......write('white.txtmode.png', png)
puts IO.binread('white.txtmode.png', 16).unpack('C*').map {|c| '%02x' % c }.join(' ')
# => 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 (Linux/Macの場合
# => 89 50 4e 47 0d 0d 0a 1a 0d 0a 00 00 00 0d 49 48 (Windowsの場合
//}
@see c:IO#io_binmode, IO.write...