每次读取文件1行,每行有可变数据量

时间:2015-05-11 16:48:43

标签: c++ file-io stream getline chord

我有一个问题,关于如何使用isstream从输入的.dat文件中读取数据,以用作和弦实现 我有各种长度和类型的输入。我的输入示例如下所示:

addC 2 #ignore this msg
addC 3 #ignore这个消息 addC 9 #ignore这个消息 打印9
插入2 data0
插入9数据1 插入3个数据2

我想逐行捕获每个输入,忽略#key后面的任何信息。

我到目前为止所做的事情如下:

if (myfile.is_open()) 
{
    while (getline(myfile, line)) 
    {
        string command;
        string id;
        string input;
        unsigned int hashKey = 0;

        istringstream iss(line);
        getline(iss, command, ' ');
        getline(iss, number, ' ');
        getline(iss, message, '#');
          //other codes
     }
 }

然而,当我在我的文件中读到时,它似乎以某种方式读取了更多然后有时需要。例如,

//在插入0之前的几个命令很好 command = insert number = 2 input = data0
在以下位置插入data0:2
command = insert number = 9 input = data1
command = insert number = 3 input = data2
//程序由于阅读中的某些错误而停在这里我相信

0 个答案:

没有答案