C#的Stream 有個 Seek 的函數 :
Seek(long offset, SeekOrigin orn) {...}
當 orn 是 SeekOrigin.Begin 時
offset 應該 >= 0
當 orn 是 SeekOrigin.End 時
offset 應該 <= -1
當 orn 是 SeekOrigin.Current 時
offset 有正有負
[example]
Stream stm;
...
stm.Seek(-1, SeekOrigin.End);
int r= stm.ReadByte();
// r 會是檔案的最後一個byte
r=stm.ReadByte()
// r 變成-1
...
stm.Seek(0, SeekOrigin.End);
int r= stm.ReadByte();
// r 應該是-1 ?
stm.Seek(0, SeekOrigin.Begin);
int r= stm.ReadByte();
// r 會是檔案的第一個byte
[ref]
http://www.aspfree.com/c/a/C-Sharp/C-Sharp-FileStream-Explained/4/
沒有留言:
張貼留言