MFC C文件写入



我正在使用MFC编写一个测量应用程序。在第一次运行时,我将数据写入第一列,然后写入下一行和下一行。

问题来了。在第二次运行时,如何在第二列中写入数据?

CFile DataFile(m_strPathName, CFile::modeWrite | CFile::modeCreate);
sprintf_s(File,"%d,%f,%ern",i , position, buffer1);
GetLength = strlen(File);
DataFile.Write(File, GetLength);

buffer1是从测量硬件中提取的功率值。

实际上,我认为应该为文件设计一种格式。写入时,应该使用偏移量来确定写入位置。例如,列长度是一个特定的值,与行值相同,如下所示:

---column1----|----column2----|---column3----|...
---row1-------|----row2-------|----row3------|..
....

当您写入一列或一行时,只需找到"|"位置,然后写入您的值。

您的意思是按列写数据,哪一列紧挨着第一列?这不能按顺序进行。由于文件是一个流结构,我们也不能在文件中间插入数据。

另一种方法是:

  1. 使用写和追加权限创建一个新文件
  2. 从原始文件中按顺序读取一行,然后将其写入新文件
  3. 将第二列的一行写入新文件
  4. 重复步骤2和3,直到原始文件到达末尾
  5. 交换原始文件和新文件的文件名

相关内容

  • 没有找到相关文章

最新更新