Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
이진파일 읽어오기
일정한 타입의 이진파일이 있습니다.
앞 84바이트는 파일정보
그리고 4바이트씩 float형이 있는데요...
텍스트 파일처럼 읽어 올수 없나요...?
답변해주세요..
1
COMMENTS
김영대
•
1999.08.05 23:19
전근수 께서 말씀하시기를...
> 일정한 타입의 이진파일이 있습니다.
> 앞 84바이트는 파일정보
> 그리고 4바이트씩 float형이 있는데요...
> 텍스트 파일처럼 읽어 올수 없나요...?
> 답변해주세요..
안녕하세요 김영대입니다
BlockRead() 를 사용해 보세요
BlockRead() 는 주어진 바이트만큼 읽어올 수 있습니다
아래는 BlockRead() 를 이용한 파일복사 소스인데 사용법만 참고해 보세요
// Block단위의 복사
function fcMemBlock(srcfname,tgtfname: string): boolean;
var
srcf,tgtf: file;
NumR,NumW: integer;
buff: array[1..2048] of char;
begin
Result := False;
if not CheckSrcF(srcfname) then
System.Exit;
if not OverWriteTgt(srcfname,tgtfname) then
System.Exit;
Result := True;
AssignFile(srcf, srcfname);
Reset(srcf, 1); {Open file, Record size = 1}
AssignFile(tgtf, tgtfname);
Rewrite(tgtf, 1); {Create file, Record size = 1}
repeat
BlockRead(srcf, buff, SizeOf(buff), NumR);
BlockWrite(tgtf, buff, NumR, NumW);
until (NumR = 0) or (NumW <> NumR);
CloseFile(srcf);
CloseFile(tgtf);
end;
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
김남호
•
1999.08.06 03:29
1
COMMENTS
/
0
LIKES
NT iis4.0에서 isapi 디버깅...
sunhee
•
1999.08.06 05:32
IIS 4.0에서는 그러한 옵션이 없어졌습니다. 대신에 서비스 매니저에서 처리하시면 됩니다. 더 간단하죠....
billykim
•
1999.08.06 03:17
1
COMMENTS
/
0
LIKES
Read-only?(Object inspector )
sunhee
•
1999.08.06 05:49
프로그램 디버깅중이라 그럽니다. 디버깅을 중지하시면 됩니다. 에러메시지를 잘 읽어 보시면 해답이 보...
우상정
•
1999.08.06 02:54
1
COMMENTS
/
0
LIKES
SNTP, RFC868 과 Delphi,C++
김영대
•
1999.08.06 17:59
우상정 께서 말씀하시기를... > 안녕하세요. 반갑습니다. > 여기저기 둘러봐도 한국델파이 개발자 그룹과...
김민호
1999.08.06 02:42
0
COMMENTS
/
0
LIKES
Delphi 2.0에서 Delphi 4.0 업그레이드시 문제
초보
1999.08.06 02:15
0
COMMENTS
/
0
LIKES
EDI 가 뭐죠?
안태호
•
1999.08.06 02:13
1
COMMENTS
/
0
LIKES
dbgrid의 내용을 화일로 저장하고 불러올수가..
김영대
•
1999.08.06 17:41
안태호 께서 말씀하시기를... > 만약 주소록을 만든다고 가정하면.. 워드에서 문서저장 처럼.. > 불러오...
김영문
•
1999.08.06 02:10
1
COMMENTS
/
0
LIKES
TClientSocket을 이용한 Unix 명령 사용하기??
김영대
•
1999.08.06 17:35
김영문 께서 말씀하시기를... > 안녕하세요... > 제가 지금 Unix 관련 Window Program을 하고 있는데... ...
Young
•
1999.08.06 02:08
1
COMMENTS
/
0
LIKES
델파이와 오라클의 사용시 프로그램 배포문제에 관해
신인재
•
1999.08.06 03:58
아쉽게도 그런 방법은 없습니다. 그런 방법의 대안으로 나온것이 MIDAS라던지 멀티티어의 개념입니...
구민오
1999.08.06 02:01
0
COMMENTS
/
0
LIKES
익스플로러나 넷스케이프의 현재 나타난 웹 페이지의 소스를 가져오려면?
왕초
1999.08.06 02:00
0
COMMENTS
/
0
LIKES
DLL 관련 에러..
최혜정
•
1999.08.06 01:56
3
COMMENTS
/
0
LIKES
SQL 작성에 문제(오라클 사용)
노력하는이
•
1999.08.06 04:06
최혜정 께서 말씀하시기를... > 오라클을 사용하고 있습니다. > 그런데 Query1(TQuery)에서 SQL을 작성하...
최혜정
•
1999.08.06 18:16
노력하는이 께서 말씀하시기를... > 안녕하세요~ ^^; > > 저도 전에 같은문제로 고민한적이 있습니다. ...
신인재
•
1999.08.06 03:17
아래와 같이 쓰셨나요...? 오픈 전에 메세지박스를 함 넣어 보세요 오류를 쉽게 찾을 수 있을겁니다. s...
무명인
1999.08.06 01:26
0
COMMENTS
/
0
LIKES
여러 File up/down(Socket)
이창훈
1999.08.05 23:14
0
COMMENTS
/
0
LIKES
델파이4.0 오라클7에서 오라클8로
송기원
1999.08.05 22:52
0
COMMENTS
/
0
LIKES
Ttreeview에 Background Image 넣는방법?
전근수
•
•
1999.08.05 22:25
1
COMMENTS
/
1
LIKES
이진파일 읽어오기
일정한 타입의 이진파일이 있습니다. 앞 84바이트는 파일정보 그리고 4바이트씩 float형이 있는데요... 텍스트 파일처럼 읽어 올수 없나요...? 답변해주세요..
김영대
•
1999.08.05 23:19
전근수 께서 말씀하시기를... > 일정한 타입의 이진파일이 있습니다. > 앞 84바이트는 파일정보 > 그리...
나그네
1999.08.05 22:18
0
COMMENTS
/
0
LIKES
3.0에서 쿨바 구현방법?????
도성현
•
1999.08.05 21:57
1
COMMENTS
/
0
LIKES
퀵리포트에서...
유도삼
•
1999.08.07 09:59
도성현 께서 말씀하시기를... > 혼자 많이 헤매다가 질문을 합니다. > > 퀵리포트에서 잘 안 되는 게 2...
델아기
1999.08.05 21:05
0
COMMENTS
/
0
LIKES
에공....
무명인
•
1999.08.05 21:05
1
COMMENTS
/
0
LIKES
ListView Scroll
김영대
•
1999.08.05 23:24
무명인 께서 말씀하시기를... > ListView에 VerticalScrollBar를 맨 끝으로 옮기고 싶습니다. > 아시는 ...
델아기
•
1999.08.05 20:25
1
COMMENTS
/
0
LIKES
에디터 입력이요.
sunhee
•
1999.08.06 06:03
editbox의 enabled속성을 false로 혹은 readonly속성을 true로 주신거 아닌가요? 델아기 께서 말씀하...
전근수
1999/08/05 22:25
Views
273
Likes
1
Comments
1
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
> 일정한 타입의 이진파일이 있습니다.
> 앞 84바이트는 파일정보
> 그리고 4바이트씩 float형이 있는데요...
> 텍스트 파일처럼 읽어 올수 없나요...?
> 답변해주세요..
안녕하세요 김영대입니다
BlockRead() 를 사용해 보세요
BlockRead() 는 주어진 바이트만큼 읽어올 수 있습니다
아래는 BlockRead() 를 이용한 파일복사 소스인데 사용법만 참고해 보세요
// Block단위의 복사
function fcMemBlock(srcfname,tgtfname: string): boolean;
var
srcf,tgtf: file;
NumR,NumW: integer;
buff: array[1..2048] of char;
begin
Result := False;
if not CheckSrcF(srcfname) then
System.Exit;
if not OverWriteTgt(srcfname,tgtfname) then
System.Exit;
Result := True;
AssignFile(srcf, srcfname);
Reset(srcf, 1); {Open file, Record size = 1}
AssignFile(tgtf, tgtfname);
Rewrite(tgtf, 1); {Create file, Record size = 1}
repeat
BlockRead(srcf, buff, SizeOf(buff), NumR);
BlockWrite(tgtf, buff, NumR, NumW);
until (NumR = 0) or (NumW <> NumR);
CloseFile(srcf);
CloseFile(tgtf);
end;