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;
    }

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;
    }