免責聲明

Disclaimer (免責聲明)
繼續閱覽代表您接受以上的免責聲明.
To continue reading means you accept the above disclaimer.

2010年10月22日 星期五

Seek in C#

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/

沒有留言:

張貼留言