我是C ++的新手,我无法理解如何从文件导入文本。我有一个.txt文件,我想从中输入所有内容,并将该文件中的所有文本都放入一个字符串中。要读取文本文件,我使用以下代码:

ifstream textFile("information.txt");


这只是读取文本文件的名称信息。我创建了一个名为text的字符串,并将其初始化为“”。我的问题是以下代码,我试图使用这些代码将.txt文件中的文本放到字符串上:

while (textFile >> text)
    text += textFile;


尽管我不确定这是什么,但我显然做错了。

最佳答案

while (textFile >> text)不会保留空格。如果要在字符串中保留空格,则应使用其他功能,例如textFile.get()

例:

#include <iostream>
#include <string>
#include <fstream>



int main(){
    std::ifstream textFile("information.txt");
    std::string text,tmp;
    while(true){
        tmp=textFile.get();
        if(textFile.eof()){ break;}
        text+=tmp;
        }
        std::cout<<text;

return(0);}

关于c++ - 如何从文件写入字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29064869/

10-16 04:46