|
typedef struct board_isam_tag {
char bunho[5]; /* 게시번호 */
char id[12]; /* 작성아이디 */
char name[20]; /* 작성자 이름*/
char date[10]; /* 작성날짜 */
char readcnt[4]; /* 조회수 */
} BOARD_ISAMREC;
BOARD_ISAMREC board_isamrec;
if ((stream = fopen(cOpenDialog->FileName.c_str(), "rb")) == NULL)
{
fprintf(stderr, "Cannot open input file.\n");
}
fread(&board_isamrec, sizeof(board_isamrec)+1, 1, stream);
I-SAM 화일로 된걸 포팅하고 있습니다. (유닉스에서 -> 윈도우 실빌더) 문자는 리딩이 잘됩니다. 그런데 문제는 char readcnt[4]; /* 조회수 */ 부분입니다. 아스키형태로 저장된게 아니고 숫자형태로저장되어 있는것 같네요. 원소스에서는 ldlong((char *)&board_isamrec.readcnt) 이런식으로 값을 뽑아냈는데. ldlong가 외부 함수같기는 한데 시빌더에는 제공하지 않는 함수네요.. (char *)&board_isamrec.readcnt 부분도 컴파일 에러나오고 바이러니입출력은 처음이여서 고수님이 많은 조언부탁드립니다. (비트연산자 쓰면 어떻게 될것 같은데.. 머리가 짧아서 ^^)
|