注册 登录
编程论坛 C++教室

读取用变量做文件名的问题

yujinxiang19 发布于 2010-08-18 10:10, 2630 次点击
请问大家用c++怎样读一个文件夹的的很多文件?文件名是有规律的,比如hk.0000、hk0002、hk0004。。。。。。,我想先把文件名设置为字符变量,在读取,可是不成功,有其他方法吗?小弟初学,请大家帮忙。
4 回复
#2
mxs8102010-08-18 10:59
你可以先查找文件夹下面的所有文件,然后再依次操作文件,下面是在vc++上的代码,仅供参考思路:
c++上有对应的操作函数~~
程序代码:
    //首先实现文件夹内文件的查找
    WIN32_FIND_DATA FindFileData;
    std::wstring sFilePath;
    sFilePath.clear();
    sFilePath = sFilePath + sSrcFolder + L"\\*.*";
    HANDLE hFind = FindFirstFile(sFilePath.c_str(), &FindFileData);
    if (hFind != INVALID_HANDLE_VALUE)        //查找成功
    {
        //循环操作文件
        do
        {
            if ((FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) != FILE_ATTRIBUTE_DIRECTORY)        //不是目录
            {
                sFilePath.clear();
                sFilePath = sFilePath + sSrcFolder + L"\\"+ FindFileData.cFileName;        //文件名
               
//...文件操作
            }
        }while (FindNextFile(hFind, &FindFileData));
        FindClose(hFind);
    }
    else{
        return false;
    }
   
    return true;


#3
mxs8102010-08-18 11:00
你也可以把你的错误源码贴上来,大家看看哪有问题哈~~

祝你好运!
#4
yujinxiang192010-08-18 11:11
回复 2楼 mxs810
十分感谢!
#5
pangding2010-08-18 13:37
你可以把文件名把在一个字符数组里,然后传给 fopen 或者 ifstream 做参数,打开你想要的文件。

你说你的不行不知道是为什么,你把你的代码贴上来看一下呢?
1