Microsoft MVP성태의 닷넷 이야기
filestream seek에 대해 질문있습니다. [링크 복사], [링크+제목 복사],
조회: 18256
글쓴 사람
이소정 (10godysy at naver.com)
홈페이지
첨부 파일
 

filestream을 통해 파일을 불러와 richbox에 넣고있습니다.

byte[] read = new byte[1024];

fileStream.Read(read, 0, Convert.ToInt32(read.Length));

readStartPosition = fileStream.Seek(read.Length, SeekOrigin.Begin);

richbox에 넣으면 처음부터 1024까지 문자열이 보여집니다.

문제는 여기서인데... 다시 같은 파일을 불러오면 1024 다음 문자부터 문자1024개가 richbox에 출력이 되야하는데 안됩니다..

다시 같은 파일을 불러오면, 처음 부터 1024까지 문자열이 보여집니다.

if(textBox1.TextLength != 0)
{
    readStartPosition = fileStream.Seek(read.Length+1, SeekOrigin.Current);

    byte[] aaa = new byte[fileStream.Position];

    fileStream.Read(aaa, 0, Convert.ToInt32(readStartPosition));

}

richTextBox1.AppendText를 이용해 출력을 합니다.

디버깅해보니까 aaa = 2048 , read.Length = 1024, readStartPoition = 2048 입니다..

왜 그런지 모르겠습니다..

filestream.seek는 스트림의 현재 위치를 제공된 값으로 설정합니다. 라고 나와있는데.. 왜 1024다음 부터 안나오는지 머가 문제인지 쫌 알려주세요 ㅠㅠ

 








[최초 등록일: ]
[최종 수정일: 10/27/2014]


비밀번호

댓글 작성자
 



2014-10-28 12시13분
간단한 재현 코드를 담은 프로젝트를 올려주세요. 얼핏 보기로는 순차적으로 파일을 읽는 것 같은데, 굳이 FileStream.Seek 메서드를 호출해야 할 이유가 있을까요? 그냥 1024 바이트 버퍼로 Read 메서드를 반복해서 호출하는 식으로 구현하는 것이 더 낫습니다. (그리고, ... 메서드들의 정확한 사용법을 아직 숙지하지 못하신 것 같습니다.)
정성태

... 91  92  93  94  95  96  [97] 
NoWriterDateCnt.TitleFile(s)
20정성태7/29/200312223    답변글 [답변]: atl 디버깅
17박용운7/23/200312475[질문] 보안모듈? [1]
13박용운7/23/200313047"IE BHO 개체를 개발할 때, 인터넷 익스플로러가 아닌 탐색기에서 활성화 되는 문제 해결" 문서를 읽고...
14정성태7/23/200311927    답변글 [답변]: "IE BHO 개체를 개발할 때, 인터넷 익스플로러가 아닌 탐색기에서 활성화 되는 문제 해결" 문서를 읽고...
16박용운7/23/200312479        답변글 [답변]: [답변]: "IE BHO 개체를 개발할 때, 인터넷 익스플로러가 아닌 탐색기에서 활성화 되는 문제 해결" 문서를 읽고...
7박용운7/21/200314163HTTP 프로토콜로 통신하는법? [5]
6박용운7/21/200314521POST값을 못읽는 사이트는? [1]
1박용운7/18/200316651[질문] IWebBrowser2로 POST값 구하기 [4]파일 다운로드1
... 91  92  93  94  95  96  [97]