weixin_52174370 2022-03-24 22:11 采纳率: 80%
浏览 76
已结题

C++如何批量读取dat文件

读取的文件的代码如下,名字按QSGS_1,QSGS_2,等的形式,分别进行读取、处理,按照下面的形式无法读取,ifstream file("C:\特征提取\QSGS_%d.dat",m_1);请问应该怎么处理。


void init(int m_1)
{
    ifstream file("C:\\特征提取\\QSGS_%d.dat",m_1);
    if (!file)
    {
        cerr << "failed to read file\n";
        //return 1;
    }
    for (int i = 0; i < 3; i++)
        file.ignore(numeric_limits<streamsize>::max(), '\n');
    vector<array<int, 3>> data;
    int x, y, z;
    while (file >> x >> y >> z)
    {
        data.push_back({ x, y, z });
        i = int(x);
        j = int(y);
        arrgrid[i][j] = z;
    }
  • 写回答

1条回答 默认 最新

  • 赵4老师 2022-03-25 14:20
    关注
    
    oid init(int m_1)
    {
        char fn[MAX_PATH];
        sprintf(fn,"C:\\特征提取\\QSGS_%d.dat",m_1);
        ifstream file(fn);
        if (!file)
        {
            cerr << "failed to read file\n";
            //return 1;
        }
        for (int i = 0; i < 3; i++)
            file.ignore(numeric_limits<streamsize>::max(), '\n');
        vector<array<int, 3>> data;
        int x, y, z;
        while (file >> x >> y >> z)
        {
            data.push_back({ x, y, z });
            i = int(x);
            j = int(y);
            arrgrid[i][j] = z;
        }
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 4月2日
  • 已采纳回答 3月25日
  • 创建了问题 3月24日

悬赏问题

  • ¥15 乌班图ip地址配置及远程SSH
  • ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
  • ¥15 PSPICE制作一个加法器
  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 java 的protected权限 ,问题在注释里
  • ¥15 这个是哪里有问题啊?