[완료][질문]파일의 특정 부분 스트링 변경이 가능한 함수 있나요?

namsuni의 이미지

안녕하세요.
스트링 관련되 함수 중에~
파일을 읽어서 그 파일의 특정 스트링을 변경할 수 있는 문자열 함수가 있나요?
예를 들어)

...........
abc
def
ghi
jkl
...........

이렇게 있으면 fopen()으로 열고,
특정 스트링 함수를 이용하여
파일의 def를 good로 한번에 변경 할 수 있는 함수가 있으면 알려주세요...^^

vacancy의 이미지

C 함수는 아닙니다만 ..

$ cat a
abc
def
ghi
jkl
$ sed -i -e 's/def/good/' a
$ cat a
abc
good
ghi
jkl
namsuni의 이미지

제가 사용하는 장비에서~
Busybox를 보니깐 sed 명령어가 있었습니다.
그것을 이용하니 변경이 됩니다.
그런데...문제는 sed는 TAB, SPACE인식에 있어서 TAB은 적용이 안되는점이 있었습니다.
SPACE로 하니깐 잘 되구요~^^
답변, 감사드립니다.^^

select99의 이미지

파일내의 특정 문자를 바꾸긴 어렵습니다.

특히나.. 바꾸는문자열의 길이가 다르면 불가능합니다.

결과물이 동일한방법으로.. 새파일을 만들거나... 내용전체를 다바꾸는거지요..

namsuni의 이미지

네 말씀하신대로 C언어에서는 함수로써 처리할 수 있는 방법이 없는것 같더라구요....ㅠㅠ
C언어로 해결 할려면, 새 파일을 생성하는 방법 밖에는...
그런데~sed 명령어로 어떻게 해결이 되었어요^^
소중한 답변 감사드립니다~^^