Q&A

  • memoryStream에서 일정크기만큼 읽어서 파일로 저장하려면?
memoryStream에서 일정 크기만큼 읽어서 파일로 저장하려고 합니다.
memoryStream의 내용은 이진파일을 blob에 저장한 내용을 stream에 저장한것입니다.

mem: TMemoryStream;
F : File;
buffer : Array of 0..1024;

...


mem.read(Buffer, 1024);
write(F, Buffer);

그런데 타입이 맞지 않는다고 에러가 납니다.
안되는 건가요? 어떻게 해야할지...
감사합니다.
1  COMMENTS
  • Profile
    최용일 2003.11.29 03:50
    안녕하세요. 최용일입니다.

    흠~ Buffer는 동적배열로 포인터니까 타입이 안맞겠죠...
    Write함수는 텍스트 파일이나 고정된 레코드로 형태화된 파일에 쓰이구요. 님과 같이 비형태화파일에 쓸때는 BlockWrite함수를 쓰시면 됩니다.

    Mem.Read(Buffer[0], 1024);
    BlockWrite(F, Buffer[0], 1024);

    Buffer란 변수가 동적배열로 포인터의 일종이기 때문에 함수 파라매터에 Buffer대신에 Buffer[0]을 쓰셔야 제대로된 값이 들어갑니다.

    ^^ 항상 즐코하세요...