RGSS2を知る(29)
TableクラスのMarshal。
t = Table.new(2,3,4) c = 1 for i in 0..1 for j in 0..2 for k in 0..3 t[i,j,k] = c c += 1 end end end open("c:\\test.txt","w+b") do |fh| fh.write(Marshal.dump(t)) end
結果はこんなかんじ。
04 08 75 3A 0A 54 61 62 6C 65 49 03 00 00 00 # 次元数 02 00 00 00 # x 03 00 00 00 # y 04 00 00 00 # z 18 00 00 00 # 総数 01 00 # 0,0,0 0D 00 # 1,0,0 05 00 # 0,1,0 11 00 # 1,1,0 09 00 # 0,2,0 15 00 # 1,2,0 02 00 # 0,0,1 0E 00 # 1,0,1 06 00 # 0,1,1 12 00 # 1,1,1 0A 00 # 0,2,1 16 00 # 1,2,1 03 00 # 0,0,2 0F 00 # 1,0,2 07 00 # 0,1,2 13 00 # 1,1,2 0B 00 # 0,2,2 17 00 # 1,2,2 04 00 # 0,0,3 10 00 # 1,0,3 08 00 # 0,1,3 14 00 # 1,1,3 0C 00 # 0,2,3 18 00 # 1,2,3
隣のアドレスに行くとxが増える。
Z→Yの順に省略できるのだから、まあ妥当なところか。