창조유저그룹-커즈닷컴
Window close
ID :     PASS :   
   
  처음으로
  창조
  창조 소개
창조 다운로드
CUGz.com 소개
온라인 도움말
  커뮤니티
  가입인사
자유게시판
Q/A게시판 (0/1)
TIP/TECH
열린강좌
자주하는질문
아이디어게시판
  자료실
  소스자료실
프로그램자료실
기타자료실
명예의 전당
이미지 자료실
  지원/기타
  표준용어재정
구글 웹서치  
관리자 전용


창조 팁
- '창조' 에 관한 팁을 올리는 곳입니다. 다수의 이미지가 필요하시면 아래 '이미지 자료실' 에 업로드 후 불러와 주세요..


LIST ALL
Posted by 지상현2005-10-05 18:46:02, Hit : 5504
[팁] 파일에 정수값 쓰기
Homepage : http://ssidang.x-y.net
Post URL : http://cugz.sjworks.net/bbs/zboard.php?id=tip&no=242
이 팁은... 창조에서 정수값을 쓰는 방법을 소개합니다 ^^;

무슨 소린가 하면...
창조에서 다룰 수 있는 파일 쓰기/읽기 명령은 이 정도가 있습니다.

파일써/파일읽어
파일이진써/파일이진읽어

하나는, 문자열 데이터를 파일에 쓰는 것이고, 또 하나는 이진 형식으로 쓰는 것이지요.

다른 언어를 써보신 분들은 아시겠지만, 일반적으로 파일에 숫자를 저장할 때는 숫자 그대로 저장합니다. 예를 들어 17 이라는 숫자를 쓴다면, 문자열로 "27"이라고 쓰는 것이 아니라, 메모리에 저장된 그대로 1B 00 00 00 이라고 저장하겠죠. (4바이트의 경우에는)

뭐 다 집어 치우고, 왜 이런 방법을 쓰는지 알아봅시다.
창조의 실수 형식은 4바이트를 차지하는데, 약 -20억~20억 까지 표현할 수 있습니다.

만약 이 것을 그대로 문자열로 쓴다면 어떻게 될까요?
136 을 쓰려면 3바이트가 필요하지만, 654561391 를 쓰려면 9바이트나 필요합니다.
읽으려는 값은 실수 한가지인데, 이렇게 길이가 달라지면 난감할 뿐입니다. 어떻게 읽을까요?

그렇기 때문에, 앞서 말한 방법으로 저장하면 어떤 값이든 항상 4바이트로 일관되게 유지되고, 또 읽으면 즉시 그대로 쓸 수 있기 때문에 편리합니다. "문을수" 함수를 거칠 필요가 없다는 것이지요.




자, 그럼 파일에 일단 정수값을 써보는 방법을 알아봅시다.
"정수를16문" 이란 함수를 기억하시나요? 이 함수는 아주 편리한 함수입니다.
정수를 16진수로 바꿔주며, 자리수까지 맞춰줍니다.

이런 식으로 하면 어떨까요?

파일이진써(핸들, 정수를16문(쓰고싶은숫자,8));

정수를16문에서 8을 지정한 것은, 8자리로 만들라는 의미입니다.
그러니까 결과는 반드시 길이가 8인 문자열로 나옵니다. 왜 8인고 하니, 16진수는 2글자가 1바이트를 이루기 때문에, 8로해야 4바이트가 되기 때문이죠.
이 것을 이진으로 바로 씁니다.

그런데, 문제가 있습니다.
인텔 계열의 CPU는 리틀 엔디언 방식을 사용하기 때문입니다.
간단히 말해서, 대가리가 작은 놈부터 읽어준다는 뜻입니다 -_-;

317 이란 값을 16진수로 표현하면 01 3D 인데, 실제로 메모리나 파일에는 거꾸로, 3D 01 이라고 쓰여있다는 뜻이지요.
그러니까, 정수를16문의 결과를 2자리씩 끊어서 뒤집어주는 작업이 필요한 것입니다.


정수를16문의 결과 문자열이 11 7B 33 A3 이었다면, A3 33 7B 11 이라고 이진으로 써주면 됩니다.
물론 사이띄개는 보기 좋으라고 쓴 것이므로 진짜로 적용할 때는 붙여서 써야 합니다~

LIST ALL               GO TO THE TOP


N
   Subject
Posted by
Date
H
192
   보안의 10대 법칙 [11]
위자드 2004/12/22  5144
191
   기본객체의 글꼴을 '돋움'에서 '굴림' 으로 변경하기.. [12]
변혁수 2005/01/19  5117
190
   내용 에서 내용으로 문자 빨리 복사해가기.. [4]
손상진 2005/01/21  5448
189
   [팁] 팝업메뉴 만들기 [초보용] [5]
강성민[FreeCreate] 2005/03/04  4733
188
   [TIP] 창조 0.9의 그림판 투명창을 깔끔하게 만들기 [3]
권선중 2005/03/08  6312
187
   [TIP] 프로그램 제작시 프로그램크기는 무시하세요.... [4]
권선중 2005/03/09  5716
186
   api 사용 파일다운로드시.. [2]
박재성[날개달기] 2005/03/22  5218
185
   [팁] ^ㅁ^ [4]
박재성[날개달기] 2005/04/14  5280
184
   컴퓨터 단위들.. [2]
손상진 2005/04/17  5403
183
   초보의 허접 팁입니다 - 창 종료할때 위치와 크기 기억하기 - [2]
짱아 2005/04/26  5097
182
   [버그리포트] 이름표#숫자.제목:="랄랄라"; 식의 명령을 쓸때.. [4]
손상진 2005/06/26  5131
181
   [끼적 Tip] 다계정 로그인 구현 [2]
권선중 2005/06/26  4751
180
   [TIP]선중암호화 구현의 보완방법 [2]
권선중 2005/08/04  5521
179
   커즈닷컴 로그인 주소 [2]
qkrwhdgns 2005/08/21  5488
178
   xp에서 창조로 시스템 종료및 리부팅 하기.. [9]
권선중 2005/08/23  5551
177
   [Tip] 창조로 엑셀파일 형식으로 저장하기~ ㅋ [6]
최재일 2005/09/04  5955
176
   (Tip(?)) 명령어 편집창에서 키보드로 블록(선택)잡기 [4]
qkrwhdgns 2005/10/03  6066
175
   팁입니다 ㅡ,ㅡ;; 확장자없는 미디어 사용하기 ㅡㅡ; [1]
만물 2005/10/04  6165

   [팁] 파일에 정수값 쓰기
지상현 2005/10/05  5504
173
   [팁#2] 파일에서 정수값 읽기!
지상현 2005/10/05  5764
172
   [팁#3] 파일에 정수값 쓰기, 또 다른 방법!
지상현 2005/10/05  5554
171
   창조 도움말이 뻥을 쳤다! [5]
지상현 2005/10/08  5328
170
   창조에서 음수를 사용할 때 주의하자! [1]
지상현 2005/10/08  6832
169
   확실한 시스템/윈도우/임시 폴더 알아오기 [6]
지상현 2005/10/28  6324
168
   마우스/키보드 누를때,눌렀을때.. 속도(?) [1]
qkrwhdgns 2005/11/13  5621
LIST ALL   Prev [1][2][3][4][5][6] 7 [8][9][10]..[14] Next
Copyright 1999-2024 Zeroboard / skin by reedyfox in miniwini style
로그인
지우개 Expert 3.0
제작자 : 천호성 님 [LINK]
로그인
대박로또2005
제작자 : 최재일 님 [LINK]
로그인
1박종훈15292 점
2지상현8809 점
3손상진7388 점
4권선중6060 점
5이진백5174 점
로그인
가입일닉네임
05/31김동률
03/31홍형기
09/01o00pp99oo
12/27이재민
11/20이희철
로그인