텍스트 파일 이름이 있습니다. 텍스트 파일을 스트림으로 읽어 콘솔에 표시하고 싶습니다. 완료되면 사용자에게 이름을 입력하라는 메시지가 표시됩니다. 그런 다음 파일에 추가해야합니다.콘솔에 텍스트 파일을 읽은 다음 텍스트 파일을 추가하십시오.
이 두 가지를 따로 수행 할 수는 있지만 함께 사용할 수는 없습니다. 내 코드는 다음과 같습니다. 내가 거기에있는 동안 루프를두면
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <sstream>
#include <string>
using namespace std;
using namespace System;
int main(array<System::String ^> ^args)
{
fstream myfile;
string line;
string name;
myfile.open("Names.txt",ios::out | ios::in | ios_base::app);
if (myfile.is_open())
{
while(getline(myfile, line))
{
cout << line << endl;
}
cout << "Enter your name!\n";
getline (cin, name);
myfile << name;
myfile.close();
}
else
{
cout << "file was not opened\n";
}
return 0;
}
, 그것은 콘솔에 모든 이름을 기록하지만, 목록에 사용자가 입력 한 이름을 추가하지 않습니다. while 루프를 꺼내면 파일에 이름을 추가 할 수 있지만 물론 그 파일에 이미있는 이름 목록을 얻지는 못합니다.
가장 좋은 추측은 getline을 사용하여 파일을 루프 한 후에 위치가 스트림의 끝에 있다는 사실과 관련이 있다고 생각합니다. 따라서 이름을 추가하려고 할 때 스트림에 남아있는 공간이 없습니다.
C++를'배열^args)'?!? –
trojanfoe
Visual Studio를 사용 중입니다. 프로젝트 유형 CLR Console App를 선택했습니다. 그것은 나를 위해 공급되었습니다. – Brandon
그것은 관리 C++입니다 ... – Scis