通过C ++ DLL读取文本文件

时间:2018-10-24 05:53:05

标签: c++ dll

这是CPP类库代码。我确定我在这里错过了一些东西。该函数的返回值不正确。我正在尝试使用此DLL函数ReadFromFile读取文本文件的第一行/最后一行/所有行。

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

using namespace std;

string __stdcall ReadFromFile()
{
    string str;
    string str1;
    ifstream file("D:\CPP_ReadFile.txt");   
    if (file.is_open())
    {
        while (getline(file, str))
        {
            str1 = str;
        }
        file.close();
    }

    return str1;
}

非常感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

getline函数:

  

从is中提取字符并将它们存储到str中,直到   找到定界符delim(或换行符'\ n',   对于(2))。

这意味着您一次只能从文件中读取一行,并将每一行保存到 str 中。然后,每次迭代将结果保存到 str1 中,但如果要完整的文件,则应附加该文件。为此,而不是:

str1 = str;

要做:

str1 += str;