firstFileStream[50]
という文字配列があり、これはfstreamを使ってinfileから書き込まれています。C++でchar配列を文字列に変換するにはどうすればよいですか?
この文字配列をfirstFileAsString
という文字列に変換したいとします。 string firstFileAsString = firstFileStream;
を書くと、配列内の最初の単語だけが書き込まれ、最初のスペースまたは空の文字で停止します。私がfirstFileAsString(firstFileStream)
と書くと、同じ出力が得られます。
文字配列全体、つまりその中のすべての単語を文字列に書き込むにはどうすればよいですか? zdanが指摘したように、私は、ファイルの最初の言葉を読んでいたので、代わりに私が割り当てるためにistreambuf_iterator<char>
を使用しました、
string firstInputFile = "inputText1.txt";
char firstFileStream[50];
ifstream openFileStream;
openFileStream.open(firstInputFile);
if (strlen(firstFileStream) == 0) { // If the array is empty
cout << "First File Stream: " << endl;
while (openFileStream.good()) { // While we haven't reached the end of the file
openFileStream >> firstFileStream;
}
string firstFileAsString = firstFileStream;
}
はどのようにどのように多くの文字をコピーするために知っているのですか? – juanchopanza
入力ファイルは、空白を含むその文字数を含む長さで設定されています – fauliath
@Magis 50文字をコピーする必要がありますか、それとも秘密の番号ですか? – juanchopanza