这是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;
}
非常感谢您的帮助。
答案 0 :(得分:0)
getline函数:
从is中提取字符并将它们存储到str中,直到 找到定界符delim(或换行符'\ n', 对于(2))。
这意味着您一次只能从文件中读取一行,并将每一行保存到 str 中。然后,每次迭代将结果保存到 str1 中,但如果要完整的文件,则应附加该文件。为此,而不是:
str1 = str;
要做:
str1 += str;