long
을 C++ fstream 클래스를 사용하여 텍스트 파일에 쓰려고합니다. 파일은 실행 전에 디스크에 이미 만들어져 있습니다. 다음 코드를 실행하고 초기 값을 읽을 수 있지만 새 값을 저장할 수 없으므로 덮어 씁니다. 내가 도대체 뭘 잘못하고있는 겁니까?fstream에서 <<를 사용하여 쓰기
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <fstream>
using namespace std;
int main(int argc, char* argv[]) {
long f;
fstream myFile("data.txt", fstream::in|fstream::out);
cout << "f before: " << f << endl;
myFile >> f;
cout << "f after: " << f << endl;
f++;
cout << "f after increment: " << f << endl;
myFile << f;
myFile.close();
return 0;
}
그 후, 파일의 값을 읽었지만 변경되지 않았습니다. 내가 여기서 뭘 잘못 했니?
먼저 'f'를 0으로 초기화하십시오. 당신은 똑같은 자리에있는 것이 아니라 이전의 것의 뒤에 새로운 f *를 쓰고 있습니다. –