파일 입출력에 관한 질문을 드립니다.

assa의 이미지

여기서 여러모로 많은 해답을 구할 수 있어서 제게 있어 참 좋은

동네 같네요 ^^;; 고맙습니다.

다름이 아니라 파일의 내용의 일부를 수정하는 문제때문에 질문을

드립니다..

fstream finout;

finout.open("file", ios::in|ios::out|ios::binary)

... 중략 

파일속 내용중 특정 문자를 검색후

현재 포인터는 특정 문자열의 끝에 위치한 상태..(특정 문자열의 길이= k)

finout.seekp(-k, ios::cur);

finout << "변경할 문자열";

이렇게 하면 특정 문자열이 "변경할 문자열"로 바뀝니다..

그런데...만약 특정 문자열을 치환하지 않고 특정 문자열의 앞에

"변경할 문자열"을 추가한다고 할때는 어떻게 하는지 잘 모르겠습니다...

약간의 힌트라도 조금 주세요..부탁합니다.

doldori의 이미지

새로 파일을 만들어 추가할 위치까지의 내용을 복사한 다음 추가할 문자열을 쓰고
나머지 내용을 이어쓰면 됩니다.