0
我有一個二進制文件,我想讀取這個文件,如前四個字節,然後下一個5個字節,然後下一個3個字節,直到文件結束。如何讀取字節的固定大小,繼續使用Ruby進行轉向?
我能夠使用each_byte讀取文件,但我想按照它們存儲在文件中的順序將所有這些字節分組。
我能夠閱讀這個使用以下行,但不知道如何閱讀固定大小的塊連續。
File.open('myfile','rb') do |file|
file.each_byte {|ch| print "#{ch.chr}:#{ch}\t"}
末
其近到我想要做的,但我想像腳本打印行「前4字節」,然後打印前4個字節的內容,然後打印「字節5至10」,並在其下面的內容從5到10的字節等等直到文件結束。 – 2012-03-31 12:01:35
我想我明白了。查看我的更新。 – pguardiario 2012-03-31 12:18:38
好的,但如果在一些固定大小的塊之後我想要打印其他可變長度的塊,我該如何一次打印它們呢?我的意思是我需要在正則表達式中使用而不是/(.{4})/? – 2012-03-31 12:22:50