2011-01-31 186 views
0

我需要做的是向後讀取文件。我想要做的是向後讀文件,然後向後移動,看​​看值是否爲G或以十六進制數47爲單位,然後查看下一個值是否爲N或以4進製表示,然後查看下一個值是否爲P 。我目前使用的二進制IO在讀,然後用...向後讀取二進制文件

這裏是一個圖像的鏈接,將更好地展示我的意思.. http://www.facebook.com/photo.php?pid=2189508&l=92393dfccb&id=1283154964

String s = Integer.toHexString(hexIn); 
    if(s.length() < 2){ 
    s = "0" + Integer.toHexString(hexIn); 
    } 

要確保六角不會錯過年底的任何零(這是我在這個網站上發現::)

+0

如果您提到了您在較高級別嘗試執行的操作,它將幫助我們幫助您...... – thkala 2011-01-31 01:48:03

回答

0

你可以想像,倒着讀是不正常的事情,你就必須做事端很奇怪。

但是你可以地方的索引文件的自己。如果你這樣做了,把它放在最後,讀一個字節,然後放在(end-1),讀一個字節,等等,你會成功。

這將是可怕的慢,所以你做了什麼ISS多讀,你可以到緩衝區中,從末端開始,然後再通過緩衝落後,然後重新填充緩衝。

This tutorial告訴你所有關於隨機訪問的I/O在Java中。

0

RandomAccessFile將是用於向後讀取文件的最簡單的類。

1

而不是閱讀向後文件,尋找你的字符串,你爲什麼不只是扭轉你的字符串,並在文件中尋找它去向前?這似乎是一個更簡單的解決方案?