chsize 를 간단하게 될것같았는데...
FileOpen() 으로 열린화일은 안되더군요..
아래와 같이 함수를 만들어 쓰면 어떨지요?...
#include <io.h>
#include <fcntl.h>
void change_size(char *filename,int size)
{
int handle=open(filename,O_RDWR);
chsize(handle,size);
close(handle);
}
.끝.
여태식 님이 쓰신 글 :
: FileOpen()을 이용하여 파일을 FileRead와 FileWrite로 파일을 읽고/씁니다.
: 파일의 데이타는 구조체를
: struct{
: char s[100];
: char t[100];
: }
: 1,2,3,4,5...10으로 10개의 데이타가 입력되어 있을때
: 입력되어 있는 데이타 중 3번째에 있는 데이타만을 삭제하고
: 1,2,4,5...10의 9개 데이타로 만들고 싶습니다.
:
: 제가 사용하는 방법은
: 임시파일을 생성해서 3을 제외한 나머지를 임시파일에 저장을 해서 다시 원래 파일을 create해서 임시파일에서 불러와서 저장합니다.
: 그러다 보니 많은 데이타 양일 경우에 시간이 너무 많이 소요됨.
:
: 그래서 임시파일을 만들지 않고 원래파일에서 3번째자리에 4를, 4번째 자리에 5를...이런식으로 하면 파일의 제일마지막에 10,10 이 두개가 남개 되는데
: 이때 제일마지막에 파일의 끝 표시를 하면 될것 같습니다.
: 이게 가능할까요??
: 방법은요???
:
:
:
|