c++ 取文件夹中所有文件名 赋值给变量

如下程序 怎么在while循环里将 file.name的值赋给数组 或者字符串

int main(){
_finddata_t file;
long lf;

int count = 0;
//输入文件夹路径
if((lf = _findfirst("C:\\实验语料\\*.txt", &file))==-1)
cout<<"Not Found!"<<endl;
else{
//输出文件名
cout<<"file name list:"<<endl;
while(_findnext( lf, &file)==0){
cout<<file.name<<endl;
}
}
_findclose(lf);
return 0;
}

#ifndef MAX_PATH
#define MAX_PATH 260
#endif

typedef struct _FILE_NAME
{
char szFileName[MAX_PATH];
}FILE_NAME, *LPFILE_NAME;

int main()
{
LPFILE_NAME lpFileName = new FILE_NAME[1024];//假设有1024 个文件
memset(lpFileName, 0, 1024*sizeof(FILE_NAME));
int iCount = 0;//

_finddata_t file;
long lf;

int count = 0;
//输入文件夹路径
if((lf = _findfirst("D:\\360\\*.dll", &file))==-1)
cout<<"Not Found!"<<endl;
else{
//输出文件名
cout<<"file name list:"<<endl;
while(_findnext( lf, &file)==0){
if (iCount < 1024)
{
_tcscpy_s(lpFileName[iCount].szFileName, MAX_PATH, file.name);//拷贝到这儿
// vc6 的话直接 strcpy
++iCount;
}
//cout<<file.name<<endl;
}
}
_findclose(lf);

for (int i = 0; i < iCount; ++i)//测试下
{
cout<<lpFileName[i].szFileName<<endl;
}

if (lpFileName != NULL)//删除new 出来的指针
{
delete[] lpFileName;
lpFileName = NULL;
}

system("pause");
return 0;
}
温馨提示:内容为网友见解,仅供参考
无其他回答

c++ 取文件夹中所有文件名 赋值给变量
ifndef MAX_PATH define MAX_PATH 260 endif typedef struct _FILE_NAME { char szFileName[MAX_PATH];}FILE_NAME, *LPFILE_NAME;int main(){ LPFILE_NAME lpFileName = new FILE_NAME[1024];\/\/假设有1024 个文件 memset(lpFileName, 0, 1024*sizeof(FILE_NAME));int iCount = 0;\/\/...

C++程序怎样调出文件中的数据然后赋值给程序中的变量?
\/\/data.in是文件名,fin是文件读入操作,可以自己起名字 ifstream fin("data.in");\/\/fout是文件写入操作,也可以自己起名字 ofstream fout("data.out");int main(){ int a;fin>>a;fout<

C++怎么读取文件中的几个数字在将它们储存给相应的变量
比如在exe的当前文件夹的txt文档读取内容。include<iostream> #include<fstream> using namespace std; int main() { ifstream fin("in.txt"); int a; fin>>a; cout<<a<<endl; return 0; }

如何批量获取一个文件夹下的文件属性,然后存入数据库
但在Win32下,“C”的文件操作函数不能使用该句柄,如果需要的话,可以使用函数_open_osfhandle从Win32句柄得到一个“C”文件函数可以使用的文件句柄。 关闭文件使用Win32的CloseHandle。 在Win32下,CreateFile可以操作的对象除了磁盘文件外,还包括设备文件如通讯端口、管道、控制台输入、邮件槽等等。 (4)使用CFile和其...

C++中如何把指针中的值取出来赋给常规变量
这个是指针 p,指针就是一个地址,*p表示地址里的内容,所以如果想要给变量var赋值,只要用 var = *p就可以了 因为你申请的是char型的数组,所以你输入的内容都将被认为只有一个字符,而且是字符型的,如果用int型就不会出现这个问题了,char型最大只能表示0~255,不可能放下你的数 ...

C++关于用ifstream来读取txt数据赋值给一个结构体对象和数组的问题...
{ ifstream ReadFile;int n=0;char line[512];ReadFile.open(filename,ios::in);\/\/ios::in 表示以只读的方式读取文件 if(ReadFile.fail())\/\/文件打开失败:返回0 { return 0;} else\/\/文件存在 { while(!ReadFile.eof()){ ReadFile.getline(line,512,'\\n');n++;} return n;} 参考...

C++头文件里声明的变量如何能让所有.cpp文件都可以对它进行修改值,而且...
例如ULONG g_1588State;在另外一个文件里面extern ULONG g_1588State;一下即可以了 extern C\/C++关键字 修饰变量,表示引用另一文件中的变量。extern变量:用关键字extern说明的变量成为外部变量。一个变量被说明为外部变量,其含义是告诉系统不必为其按一般变量那样分配内存,该变量已在这一局部的外边...

C++如何统计文件夹下文件个数
\/v 显示所有未包含指定字符串的行。\/c 仅显示包含字符串的行数 "$$$" 特殊字符,一般文件中都没这个字符,不过可以用$$$来命名文件夹,所以我建议用冒号,这个不能当作文件夹或者文件的名字.> 输出到 1.log 文件 这个比较好:dir \/b | find \/v \/c ":" > 1.log === 扩展:包含子目录:...

C++生成文件 %d.txt 之类的,文件名应是变量,调用cstdio。。。_百度...
include <iostream> include <cstdio> include <cstdlib> using namespace std ;int main(){ int n;cin >> n ;for( i=1;i<=n;i++ ){ sprintf(cmd,"echo %d > %d.txt", i,i );system(cmd);} return 0;}

C++中如何重新赋值给变量?
直接再一次赋值就可以了 ,它会取代原来的值。如a=1;cout<<a<<endl; 结果是1a=5;cout<<a<<endl; 结果是5你的输出不对,cout<<"a";你把a当成了字符了这么可能对了。

相似回答