Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 将文本文件读入字符串。C++;文件流_C++_Ifstream - Fatal编程技术网

C++ 将文本文件读入字符串。C++;文件流

C++ 将文本文件读入字符串。C++;文件流,c++,ifstream,C++,Ifstream,我想将行的第一个字符串读入dbiet[sdb].kitu,并将行的其余部分读入dbiet[sdb].mota 示例:第1行=\Dau xuyet phai dbiet[sdb].kitu=“\”和dbiet[sdb].mota=“Dau xuyet phai” 我想逐行阅读,直到遇到下行字符('\n')。如何做到这一点。 对不起,我的英语不好。谢谢要将文件中的整行内容读入字符串,请使用std::getline如下所示: \ Dau xuyet phai @ Dau @ # Dau # $ Ky

我想将行的第一个字符串读入dbiet[sdb].kitu,并将行的其余部分读入dbiet[sdb].mota

示例:第1行=\Dau xuyet phai

dbiet[sdb].kitu=“\”和dbiet[sdb].mota=“Dau xuyet phai”

我想逐行阅读,直到遇到下行字符('\n')。如何做到这一点。
对不起,我的英语不好。谢谢

要将文件中的整行内容读入字符串,请使用
std::getline
如下所示:

\ Dau xuyet phai
@ Dau @
# Dau #
$ Ky hieu $
( Dau mo ngoac
) Dau dong ngoac
您可以在循环中执行此操作,直到文件结束,如下所示:

 std::ifstream file("my_file");
 std::string temp;
 std::getline(file, temp);
工具书类

getline(fin,buffer,'\n')


其中,
fin
是打开的文件(ifstream对象),而
buffer
是要复制行的
string/char
类型。

看起来您正在尝试解析每一行。另一个答案向您展示了如何在循环中使用
getline
分隔每一行。您需要的另一个工具是
istringstream
,用于分离每个令牌

 std::ifstream file("my_file");
 std::string temp;
 while(std::getline(file, temp)) {
      //Do with temp
 }

你在问
的bug,而(!eof())
。我不知道你在问什么!不。我想将第一行字符串读入dbiet[sdb]。kitu和其余行读入dbiet[sdb]。mota示例:line\Dau xuyet phai dbiet[sdb]。kitu=“\”和dbiet[sdb]。mota=“Dau xuyet phai”谢谢帮助。
eof()
总是错误的。我尝试使用您的代码,但应用程序只是读取了最后一行line@HoangQBH你能显示你想要的输入吗,所需的输出(不是不正确的输出)和您尝试使用的代码
std::getline
我尝试使用您的代码,但应用程序只能读取最后一行
ostringstream
*
 std::ifstream file("my_file");
 std::string temp;
 while(std::getline(file, temp)) {
      //Do with temp
 }
std::string line;
while(std::getline(file, line))
{
    std::istringstream iss(line);
    std::string token;
    while (iss >> token)
    {
        // do something with token
    }
}