#author("2019-08-29T09:49:22+09:00","default:yakumo_murakami","yakumo_murakami")
[[Ruby]] - [[Rubyで、オブジェクトを保存する]]
Marshal.dumpとMarshal.loadを使ってオブジェクトを直接ファイルに保存するの。
ただし、[[pstoreを使う方法>Rubyで、オブジェクトを保存する]]も内部的にMarshalを使っているようなので、 ''pstoreを介さずに直接Marshalを使うことで何か問題が起きるケースがあるのかもしれない。これについては未検証。''
* クラス側 [#a4a4435d]
ファイル名._save(オブジェクト) でファイルに保存、オブジェクト = ファイル名._load でファイルからロードできます。
class String
def _load
s = []
if File.exist?(self) == true
x = File.read(self)
s = Marshal.load(x)
end
s
end
def _save(s)
str = Marshal.dump(s)
File.write(self,str)
end
end
小さいモノならDBとか使うまでもなく書けて便利よ。