2017-10-12 1 views
0

나는 지정된 텍스트 파일에 정보를 작성/쓰기/삭제하기위한 사용자 입력을 허용하는 명부 프로그램을 만들었습니다. 이제는 프로그램을 재실행 할 때마다 덮어 쓰지 않는 영구적 인 텍스트 파일을 만들고 싶습니다. fstream을 사용하거나/ifstream의 조합이 더 나은 방법인지 아니면 어쩌면 세 번째 옵션이 있는지 확실하지 않습니다. 참조 문서를 확인할 때 나는 놓쳤다.선호되는 C++ I/O 스트림 방법 : fstream 또는 ifstream/ofstream 또는 완전히 다른 것?

지금은 사용하고 있습니다 : std::ofstream outfile("roster.txt"); 내 텍스트 파일을 깨끗이 지우는 프로그램을 죽이고 다시 실행할 때까지 작동합니다.

답변

1

추가 플래그를 확인하십시오. 기존 파일의 끝에 씁니다. http://www.cplusplus.com/doc/tutorial/files/

예제는 여기에 있습니다.

std::ofstream outfile("roster.txt" , ios::app) 
+0

감사합니다. 시도해 보겠습니다. – jsabatini

+0

또한 사용자 입력을 허용하기 전에 프로그램을 열 때 파일을 구문 분석 할 수 있습니다. 파일을 가져 와서 프로그램 데이터 구조에 입력하십시오. 그런 식으로 프로그램을 마지막으로 실행했을 때 이전에 저장된 레코드를 삭제할 수 있습니다. 이 경우 append를 사용하지 말고 데이터를 파일에 다시 작성하십시오. –

+1

| 그렇지 않으면 | –

관련 문제