int fopen_exmaple(void) 
{
    unsigned char data[40], buf[40]; 
    FILE *fRead, *fWrite; 
    int readPOS=0, readLen, writePOS=0, writeLen; 
    //Open input file 
    fRead = fopen("afewgood.dat", "rb"); 
    if(fRead == NULL)    return -1; 
    //Open output file 
    fWrite = fopen("afewgoodR.dat", "wb"); 
    if(fWrite == NULL) 
    { 
        fclose(fRead); 
        return -2; 
    } 
    while(!feof(fRead)) 
    { 
        memset(data, 0x00, sizeof(data)); 
        readLen = fread(data, 1, 40, fRead); 
        if(readLen == 0)    break; 
        fseek(fRead, readPOS, SEEK_SET); 
        readPOS += readLen; 
        memset(buf, 0x00, sizeof(buf)); 
        memcpy(buf, data, 40); 
        writeLen = 40; 
        fwrite(buf, 1, writeLen, fWrite); 
        fseek(fWrite, writePOS, SEEK_SET); 
        writePOS += writeLen; 
    } 
    fclose(fRead); 
    fclose(fWrite); 
    sync(); 
    return 0; 
} 
#include <fcntl.h> 
#include <unistd.h> 
int open_example(void) 
{ 
    unsigned char data[40], buf[40]; 
    int fRead, fWrite; 
    int readPOS=0, readLen, writePOS=0, writeLen; 
    //Open input file 
    fRead = open("afewgood.dat", O_RDONLY); 
    if(fRead == '\0')    return -1; 
    //Open output file 
    fWrite = open("afewgoodR.dat", O_RDWR|O_CREAT, S_IRUSR|S_IWUSR); 
    if(fWrite == '\0') 
    { 
        close(fRead); 
        return -2; 
    } 
    while(1) 
    { 
        memset(data, 0x00, sizeof(data)); 
        readLen = read(fRead, data, 40); 
        if(readLen == 0)    break; 
        lseek(fRead, readPOS, SEEK_SET); 
        readPOS += readLen; 
        memset(buf, 0x00, sizeof(buf)); 
        memcpy(buf, data, 40); 
        writeLen = 40; 
        write(fWrite, buf, writeLen); 
        lseek(fWrite, writePOS, SEEK_SET); 
        writePOS += writeLen; 
    } 
    close(fRead); 
    close(fWrite); 
    sync(); 
    return 0; 
} 
'c' 카테고리의 다른 글
| log파일 만들기 source (10) | 2023.02.07 | 
|---|---|
| 리눅스 IP충돌 체크 (7) | 2022.09.08 | 
| 리눅스 정규식을 이용한 IP / Email 주소 체크 (0) | 2022.09.06 | 
| 구조체 배열 인자로 넘겨서 채우기 (0) | 2022.08.11 | 
| 리눅스 usb mount 예제 (0) | 2021.07.20 | 






