[질문]fprintf()함수사용.. 파일에 특정내용을 추가하고 삭제하는문제....
글쓴이: kimyh / 작성시간: 일, 2006/10/22 - 5:59오전
화일을 열어 맨 마지막줄에 특정내용을 추가한후 프로그램을 다시 실행시키면 맨 마지막줄에 추가한 내용을 삭제하고 새로운 내용으로 추가하는문제 입니다.
아래 해당부분의 소스는 out.txt 화일을 열어 클라이언트 ip의 내용을 추가하고 추가한 내용을 확인하는 내용입니다.
지금은 실행화일을 실행할때마다 마지막줄에 계속 내용이 추가만 되고 있습니다.
out.txt
$memberid = "kimyhkim";
$memberpasswd = "yhkim";
내용 추가후 출력내용
$memberid = "kimyhkim";
$memberpasswd = "yhkim";
$Client_IP = 241.144.xxx.xxx;
해당부분 소스
stream = fopen("out.txt", "a+"); fprintf(stream, "$Client_IP = %s;\n", myip() ); fclose(stream); stream = fopen("out.txt", "r"); ret = fread( buf, 1, 256, stream); printf("%s\n", buf); fclose(stream);
어떻게 해야 먼저 마지막줄에 추가한 내용을 삭제하고 새로운 내용을 매번 추가할수 있는지 알려 주시면 합니다.
그리고 내용을 추가하는 fprintf()에서 현재는 $Client_IP = 241.144.xxx.xxx; 이런식으로 추가되는데
$Client_IP = "241.144.xxx.xxx"; "가 포함되게 추가 할려면 어떻게 해야 가능한지요.
아시는분 도움 주시면 감사하겠습니다.
Forums:
따옴표로 감싸는 건,
따옴표로 감싸는 건, 쿼테이션을 이스케이프 시키면 됩니다. " 앞에 역슬래시를 붙여주면 됩니다. " -> \"
fprintf(stream, "$Client_IP = \"%s\";\n", myip() );
lacovnk 님 감사합니다.
답변 주신데 감사드립니다.
그런방법이 있었군요.
내용추가하고 삭제하는 방법도 알려주시면 정말 감사하겠습니다.
살며 그리고 사랑하며...
정보는 공유할때 그 가치가 있는것.....
나의 조그만 지식공유는 남에게 엄청난 기쁨을 안겨 준다.
살며 그리고 사랑하며...
정보는 공유할때 그 가치가 있는것.....
나의 조그만 지식공유는 남에게 엄청난 기쁨을 안겨 준다.
그냥
그냥 메모리에서 전부 파싱해서 내용을 생성 한 다음에 모드 w로 다시 쓰기 하면 안 되나요? 퍼포먼스가 그리 중요한 프로그램이 아니라면 ㄱ렇게 해도 상관 없어 보이는데요 음음... 그러려면 프로그램 구조를 좀 바꾸셔야 겠지만 음.
----
Lee Yeosong(이여송 사도요한)
E-Mail: yeosong@gmail.com
MSN: ysnglee2000@hotmail.com
----
웃음... 행복... 평화... (진정한...) 희망... 사랑... 이 세상 모든것이 그렇다면 얼마나 좋을까...(꿈 속의 바램일 뿐인가...)
사람천사
ysnglee2000님 감사합니다.
알려주신내용에서 힌트를 얻어 다음과같이 해결 했습니다.
감사합니다.
살며 그리고 사랑하며...
정보는 공유할때 그 가치가 있는것.....
나의 조그만 지식공유는 남에게 엄청난 기쁨을 안겨 준다.
살며 그리고 사랑하며...
정보는 공유할때 그 가치가 있는것.....
나의 조그만 지식공유는 남에게 엄청난 기쁨을 안겨 준다.
완전히
근대 w 모드로 하시면 기존 파일 데이터가 모두 다 완전히 몽땅 다 덮어쓰기 되버리고 날라 간다는건 아시겠죠 설마. 그래서 저렇게 파일을 분리 시키신 건가 음.
----
Lee Yeosong(이여송 사도요한)
E-Mail: yeosong@gmail.com
MSN: ysnglee2000@hotmail.com
----
웃음... 행복... 평화... (진정한...) 희망... 사랑... 이 세상 모든것이 그렇다면 얼마나 좋을까...(꿈 속의 바램일 뿐인가...)
사람천사
ysnglee2000님 감사합니다.
지적해 주신 내용 감사합니다.
out.txt 내용은 변동이 없고 클라이언트 아이피만 변동하거든요.
그래서 좀 편법이긴 하지만 send.txt 화일을 새로 만든겁니다.
제가 초보라서 제대로 코딩을 할수가 없어서요.
관심 가져주셔서 정알 감사합니다.
살며 그리고 사랑하며...
정보는 공유할때 그 가치가 있는것.....
나의 조그만 지식공유는 남에게 엄청난 기쁨을 안겨 준다.
살며 그리고 사랑하며...
정보는 공유할때 그 가치가 있는것.....
나의 조그만 지식공유는 남에게 엄청난 기쁨을 안겨 준다.
솔직히 저도
솔직히 저도 파일 입출력 귀찮고... 따분하고... 별로 잘 하지도 못합니다. 차라리 데이터가 많아 질 거라면 DB를 쓰는게 훨씬 마음에 들죠. 약간 삽질이긴 한대 DB는.. 그래도 파일 입출력 만큼은 아닙니다. 일일히 파싱 해야 되는 부분도 적고... 어떤 내용을 변경 한다거나 할 때도 비교적 쉽습니다. 체계화 되어 있고.. 하지만 지금 작성 하시는 프로그램은 DB에 의존하게 하ㅕㄴ 복잡하게 꼬이기만 할 거 같군요... 아무튼 바라시는 일 잘 되시길 바랍니다.
----
Lee Yeosong(이여송 사도요한)
E-Mail: yeosong@gmail.com
MSN: ysnglee2000@hotmail.com
----
웃음... 행복... 평화... (진정한...) 희망... 사랑... 이 세상 모든것이 그렇다면 얼마나 좋을까...(꿈 속의 바램일 뿐인가...)
사람천사
댓글 달기