파일에서 특정위치의 데이터 삭제가 잘안되네용..

sacredone의 이미지

파일을 오픈합니다

fseek으로 파일포인터를 이리저리 움직일수 있겠죠

그러다가 특정 한줄을 삭제하고

다음줄을 땡길수있을까요

-파일-------------
abcd
efgh
ijkl
mnop
qrst
------------------

이런 파일을 오픈한다음에
가운데 "ijkl" 을 지우고

-파일-------------
abcd
efgh
mnop
qrst
-----------------

가능할까요

전체를 다읽고 그부분을 빼고
새로저장하는방법은 제외하였습니다
파일이 커지면 효율이 너무안좋아져서...

r+ 모드로 파일을 열고

그파일에서 수정만 할려고합니당

chadr의 이미지

방법 없습니다. read, write는 있지 delete는 없는 이유와 같습니다.

비슷한 짓을 손쉽게 할수 있는 방법들은 있지만 결국은 해당 파일을 전부다 디스크에서 읽어서 다시 쓰기를 할 뿐입니다.

따라서 필요 없는 레코드는 삭제되어있다고 표시만 하고 실제 삭제는 아주가끔 해주는 식으로 합니다.

-------------------------------------------------------------------------------
It's better to appear stupid and ask question than to be silent and remain stupid.