C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[9987] Re:Re:Re:[질문]바이너리파일 읽어오기
최보현.U&I [uriduri] 1120 읽음    2001-08-17 15:12
유엔아이 현입니다 ...

음 단지 베이직 소스만 보구 파일 포멧을 이해 하기가 어려운 부분이 많이 있군요

재발이 님이 쓰신 글 :
: Dim iFn As Integer, Title As String
: Dim i As Integer, j As Integer, k As Integer, ii As Integer
: Dim MinV As Single, Dec As Single, Buff As String, LastOpt1 As String
: Dim TBit() As Byte
: Dim Uk() As Single
: Dim Vk() As Single
: Dim Wk() As Single
:
: Private Sub Command1_Click()
:
:   Dim fname As String
:   Dim WindHeader As WindHeaderType
:  
:   With CommonDialog1
:     .ShowOpen
:     fname = .FileName
:     MsgBox (fname)
:   End With
:  
:   iFn = FreeFile
:  
:   Open fname For Binary Access Read As iFn
:   ReDim Uk(1 To 41, 1 To 41, 1 To 41)
:   ReDim Vk(1 To 41, 1 To 41, 1 To 41)
:   ReDim Wk(1 To 41, 1 To 41, 1 To 41)
:
:   Get iFn, , WindHeader
:    
:   For k = 1 To 41
:     Get iFn, , MinV
:     Get iFn, , Dec
:     Get iFn, , TBit
:     For j = 1 To 41
:       For i = 1 To 41
:         Uk(i, j, k) = TBit(i, j) * Dec + MinV
:       Next i
:     Next j
:   Next k
:  
:   For k = 1 To 41
:     Get iFn, , MinV
:     Get iFn, , Dec
:     Get iFn, , TBit
:     For j = 1 To 41
:       For i = 1 To 41
:         Vk(i, j, k) = TBit(i, j) * Dec + MinV
:       Next i
:     Next j
:   Next k
:  
:   For k = 1 To 41
:     Get iFn, , MinV
:     Get iFn, , Dec
:     Get iFn, , TBit
:     For j = 1 To 41
:       For i = 1 To 41
:         Wk(i, j, k) = TBit(i, j) * Dec + MinV
:       Next i
:     Next j
:   Next k
:    
: End Sub

========>>>>>>>>>>>>>>>>>

: 그리고 처음에 WindHeaderType구조로 읽어 들이는데...씨로 바꾼다면 각변수의 크기를
어떻게잡아야 하는지요?
: 부탁 드립니다....

: Public Type WindHeaderType     --- struct 로 바꾸셔야 겠저
:   Version As String            ---??? 255 바이트로 잡히남 ? 아님 문자열 길이 만큼 잡히나 ?
:   Tstamp As Date               --- TDateTime 형으로
:   xWo As Single                --- float  형으로
:   xWl As Single
:   yWo As Single
:   yWl As Single
:   zWl As Single
:   nWx As Long                  --- long 형으로
:   nWy As Long
:   nWz As Long
:   Stab As Single               --- float  형으로
:   iAws As Long                 --- long 형으로
: End Type


: 답변 감사드립니다...베이직 소스인데요...TBit()는 2차원 배열 형태로 파일로 저장되어 있는걸
: 읽어오는거랍니다.....이부분은 어떻게 읽어 들이지요?
========>>>>>>>>>>>>>>>>>

TBit 형태는 아마도 (1 To 41, 1 To 41) 형 태의 이차원 배열일것 같은데요
Byte TBit[41][41]; 형 정도가 될거 같아요~

음 아무래도 정확 한건 파일 포멧을 직접 분석을 해보셔야 하겠구요

그리고 읽어 오는 소스보다는 쓰는 소스를 분석해보는게 많을 도움이 될것 입니다.

그럼 허접한 답변 죄송합니다.

+ -

관련 글 리스트
9983 [질문]바이너리파일 읽어오기 재발이 915 2001/08/17
9995     Re:[질문]바이너리파일 읽어오기 수야 1098 2001/08/17
9984     Re:[질문]바이너리파일 읽어오기 최보현.U&I 1031 2001/08/17
9985         Re:Re:[질문]바이너리파일 읽어오기 재발이 1067 2001/08/17
9987             Re:Re:Re:[질문]바이너리파일 읽어오기 최보현.U&I 1120 2001/08/17
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.