c 에서 사용하는 pointer 구조처럼 C#의 BinaryWriter에 사용하는법
MemoryStream ms = new MemoryStream();
BinaryWriter bw = new BinaryWriter(ms);
int a = 400;
bw.write(&a);
라는 형태로 메모리 pointer를 C#에서는 사용할수가 없다.
그래서 알아보니 bw.seek() 을 쓰면 된다고 해서 써봤다..
int a = 400;
int b = 500;
int c = 600;
int d = 999;
int e = 700;
bw.write(a);
long pointer = bw.BaseStream.position;
bw.write(b);
bw.write(c);
bw.seek((int)pointer, SeekOrigin.Begin);
bw.write(d);
bw.seek(0, SeekOrigin.End);
bw.write(e);
결과
400
999 //b가 500 이지만 pointer 위치를 다시 덮어 씌워서 d 를 넣었음로 999가 들어가게된다.
600
700
우선 이렇게 해서 해결!
'프로그래밍 > C#' 카테고리의 다른 글
[C#]MDI부모폼에서 자식폼의 함수 호출 (0) | 2012.10.08 |
---|---|
[C#]byte[] 데이터 암호화 (0) | 2012.08.31 |
[ASP.NET C#]이미지 메타태그 값 수정하기 / keyword, comment / EXIF (0) | 2011.12.08 |
[C#] DataGridViewRow 복사 (0) | 2010.07.05 |
[C#] MessageBox의 기능 (1) | 2010.07.05 |