2013-09-29 66 views
2

我怎樣才能知道,而無需打開整個文件2GB的二進制文件的最後一個字節HEX .. 有沒有這樣做,而不會在內存問題的一個簡單,快捷的方式?閱讀2GB的文件進行監聽或閱讀

+1

歡迎SO。當某人回答問題時,您必須滿意,您應該接受它(http://stackoverflow.com/help/someone-answers)。這使得稍後出現相同問題的人員可以更輕鬆地快速找到解決方案。 – ChrisWue

回答

7

剛剛從末尾向後尋找:

using (var br = new BinaryReader(File.OpenRead(@"filename.2gb"))) { 
    br.BaseStream.Seek(-1, SeekOrigin.End); 
    Console.WriteLine(br.ReadByte()); // last byte 
} 
+0

就像一個魅力..謝謝 – XK8ER

+0

@ XK8ER由於他的解決方案的作品,接受他的解決方案作爲答案,通過點擊左邊的複選標記。 – Edper

1

只需打開一個文件並使用FileStream.Seek方法來獲得2GB的偏移量。這將是快速的,不會導致任何內存問題。

+0

是的,但我究竟如何讀取最後一個十六進制字節? – XK8ER