❶ C#怎么读取某一文件夹下的所有文件夹和文件
读取的代码方式如下:
int main()
{
long file;
struct _finddata_t find;
_chdir("d:\");
if((file=_findfirst("*.*", &find))==-1L)
{
printf("空白!");
exit(0);
}
printf("%s", find.name);
while(_findnext(file, &find)==0)
{
printf("%s", find.name);
}
_findclose(file);
return 0;
}
❷ C#如何获得文件夹的路径
1. System.Diagnostics.Process.GetCurrentProcess().MainMole.FileName-获取模块的完整路径。2.System.Environment.CurrentDirectory-获取和设置当前目录(该进程从中启动的目录)的完全限定目录。3.System.IO.Directory.GetCurrentDirectory()-获取应用程序的当前工作目录。这个不一定是程序从中启动的目录啊,4.System.AppDomain.CurrentDomain.BaseDirectory-获取程序的基目录。5.System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase-获取和设置包括该应用程序的目录的名称。6. System.Windows.Forms.Application.StartupPath-获取启动了应用程序的可执行文件的路径。效果和2、5一样。只是5返回的字符串后面多了一个"\"而已7.System.Windows.Forms.Application.ExecutablePath-获取启动了应用程序的可执行文件的路径及文件名,效果和1一样。 对于Windows程序 和Web 应用程序来说,他们运行的路径是不一样的,所以关键是判断当前运行的程序是哪种程序.于是我们可以使用如下的代码string path = "";if (System.Environment.CurrentDirectory ==AppDomain.CurrentDomain.BaseDirectory)//Windows应用程序则相等…{path = AppDomain.CurrentDomain.BaseDirectory;}else…{path = AppDomain.CurrentDomain.BaseDirectory + "Bin\";}这样如果我们写了一个类库,类库中用到了Assembly.LoadFrom,由于是通用类库,所以可能用到Windows程序中也可能用到Web中,那么用上面的代码就很方便了.1、Server.MapPath2、System.Windows.Forms.StartupPath3、Type.Assembly.Location方法2可以应用于控制台应用程序,WinForm应用程序,Windows服务,方法1可以应用于Web应用程序,方法3都可以应用。但方法3是加载应用程序的路径。如果是Web应用程序,取得的路径是:C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files目录。所以Web项目还是使用Server.MapPath吧。否则建议使用方法2。如果自己新建类库。可以加入对System.Windows.Forms.StartupPath的引用后使用
❸ C语言问题 已知某一路径,如何得到该路径下的某一文件夹的路径
#include <stdio.h>#include <errno.h>#include <unistd.h>#include <string.h>#include <io.h>#define MAX_FILE_PATH_LEN 128#define INVALID_HANDLE -1int main(){ char aucFilePath[MAX_FILE_PATH_LEN + 1] = {0};char aucTempPath[MAX_FILE_PATH_LEN + 1] = {0};char *pFilePath = NULL; int iDirNum = 0;int iFileNum = 0;_finddata_t finddata = {0}; long findhandle = INVALID_HANDLE;//获取当前目录,也可以做入参传入aucFilePath pFilePath = getcwd(aucFilePath, MAX_FILE_PATH_LEN);if (NULL == pFilePath) { printf("get current working directory fail, \n" "errno = %d, errro description : %s\n", errno, strerror(errno)); getchar(); return -1; }printf("current working directory = %s\n", aucFilePath);strncpy(aucTempPath, aucFilePath, strlen(aucFilePath));strncat(aucTempPath, "\\*", MAX_FILE_PATH_LEN);findhandle = _findfirst(aucTempPath, &finddata);if(findhandle != INVALID_HANDLE){do {if(finddata.attrib & _A_SUBDIR) { if ((0 != strcmp(finddata.name, ".")) && (0 != strcmp(finddata.name, ".."))) { //子目录个数 iDirNum++; printf("sub directory name = %s, path = %s\\%s, iDirNum = %d\n", finddata.name, aucFilePath, finddata.name, iDirNum); } } else { //子文件个数 iFileNum++; printf("file = %s, iFileNum = %d\n", finddata.name, iFileNum); } }while(0 == _findnext(findhandle, &finddata)); _findclose(findhandle); } getchar(); return 0;}
❹ c语言读取文件的路径怎么设定
//获取指定目录下的所有文件列表 author:wangchangshaui jlu char** getFileNameArray(const char *path, int* fileCount) { int count = 0; char **fileNameList = NULL; struct dirent* ent = NULL; DIR *pDir; char dir[512]; struct stat statbuf; //打开目录 if ((pDir = opendir(path)) == NULL) { myLog("Cannot open directory:%s\n", path); return NULL; } //读取目录 while ((ent = readdir(pDir)) != NULL) { //统计当前文件夹下有多少文件(不包括文件夹) //得到读取文件的绝对路径名 snprintf(dir, 512, "%s/%s", path, ent->d_name); //得到文件信息 lstat(dir, &statbuf); //判断是目录还是文件 if (!S_ISDIR(statbuf.st_mode)) { count++; } } //while //关闭目录 closedir(pDir); // myLog("共%d个文件\n", count); //开辟字符指针数组,用于下一步的开辟容纳文件名字符串的空间 if ((fileNameList = (char**) myMalloc(sizeof(char*) * count)) == NULL) { myLog("Malloc heap failed!\n"); return NULL; } //打开目录 if ((pDir = opendir(path)) == NULL) { myLog("Cannot open directory:%s\n", path); return NULL; } //读取目录 int i; for (i = 0; (ent = readdir(pDir)) != NULL && i < count;) { if (strlen(ent->d_name) <= 0) { continue; } //得到读取文件的绝对路径名 snprintf(dir, 512, "%s/%s", path, ent->d_name); //得到文件信息 lstat(dir, &statbuf); //判断是目录还是文件 if (!S_ISDIR(statbuf.st_mode)) { if ((fileNameList[i] = (char*) myMalloc(strlen(ent->d_name) + 1)) == NULL) { myLog("Malloc heap failed!\n"); return NULL; } memset(fileNameList[i], 0, strlen(ent->d_name) + 1); strcpy(fileNameList[i], ent->d_name); myLog("第%d个文件:%s\n", i, ent->d_name); i++; } } //for //关闭目录 closedir(pDir); *fileCount = count; return fileNameList
❺ C# 获取系统文件夹路径
楼主 这里有篇别人写的文章 看下对你有用没。系统特殊文件夹是包含公共信息的文件夹,如“Program Files”、“Programs”、“System”或“Startup”。特殊文件夹在默认情况下由系统设置,或者由用户在安装 Windows 的某个版本时显式进行设置。Environment.GetFolderPath 方法 获取指向由指定枚举标识的系统特殊文件夹的路径。命名空间:Systempublic static string GetFolderPath ( SpecialFolder folder )参数folder 标识系统特殊文件夹的枚举常数。如下:ApplicationData 目录,它用作当前漫游用户的应用程序特定数据的公共储存库。 漫游用户在网络上的多台计算机上工作。漫游用户的配置文件保存在网络服务器上,当用户登录到某个系统上时,它会加载到该系统。CommonApplicationData 目录,它用作所有用户使用的应用程序特定数据的公共储存库。 CommonProgramFiles 用于应用程序间共享的组件的目录。 Cookies 用作 Internet Cookie 的公共储存库的目录。 Desktop 逻辑桌面,而不是物理文件系统位置。 DesktopDirectory 用于物理上存储桌面上的文件对象的目录。 不应将此目录与桌面文件夹本身混淆,后者是虚拟文件夹。Favorites 用作用户收藏夹项的公共储存库的目录。 History 用作 Internet 历史记录项的公共储存库的目录。 InternetCache 用作 Internet 临时文件的公共储存库的目录。 LocalApplicationData 目录,它用作当前非漫游用户使用的应用程序特定数据的公共储存库。 MyComputer “我的电脑”文件夹。 MyMusic “My Music”文件夹。 MyPictures “My Pictures”文件夹。 Personal 用作文档的公共储存库的目录。 ProgramFiles “Program files”目录。 Programs 包含用户程序组的目录。 Recent 包含用户最近使用过的文档的目录。 SendTo 包含“发送”菜单项的目录。 StartMenu 包含“开始”菜单项的目录。 Startup 对应于用户的“启动”程序组的目录。 每当用户登录、启动 Windows NT 或更高版本或启动 Windows 98 时,系统均会启动这些程序。System “System”目录。 Templates 用作文档模板的公共储存库的目录。返回值如果指定系统的特殊文件夹实际存在于您的计算机上,则为到该文件夹的路径;否则为空字符串 ("")。 如果系统未创建文件夹、已删除现有文件夹,或者文件夹是不对应物理路径的虚拟目录(例如“我的电脑”),则该文件夹不会实际存在。例子:String Path=Environment.GetFolderPath(Environment.SpecialFolder.Favorites);//返回收藏夹位置
❻ C语言如何读取指定路径下的所有指定格式的文件
用C语言读取目录中的文件名的方法:1、如果是在window环境下,可以用一下方法:使用stdlib.h头文件声明的system()函数_CRTIMP int __cdecl system (const char*);system("dir c:\ /a:h /b > c:\dir.txt");调用系统命令dir,把c:目录下文件列表写入文件dir.txt中2、使用dirent.h头文件中声明的opendir(),readdir()函数;
intmain(intargc,char*argv[]){DIR*directory_pointer;structdirent*entry;if((directory_pointer=opendir("d:\XL"))==NULL)printf("Erroropening");else{while((entry=readdir(directory_pointer))!=NULL){printf("%s",entry->d_name);}closedir(directory_pointer);}system("PAUSE");return0;}
3、如果没有dirent.h,可以使用io.h头文件中声明的_findfirst(),_findnext()函数;示例代码:
intmain(intargc,char*argv[]){longfile;struct_finddata_tfind;_chdir("d:\");if((file=_findfirst("*.*",&find))==-1L){printf("空白!");exit(0);}printf("%s",find.name);while(_findnext(file,&find)==0){printf("%s",find.name);}_findclose(file);system("PAUSE");return0;}
❼ C语言怎么读取某一文件夹下的所有文件夹和文件
读取的代码方式如下:
int main()
{
long file;
struct _finddata_t find;
_chdir("d:\");
if((file=_findfirst("*.*", &find))==-1L)
{
printf("空白!");
exit(0);
}
printf("%s", find.name);
while(_findnext(file, &find)==0)
{
printf("%s", find.name);
}
_findclose(file);
return 0;
}
❽ c#中怎么获得当前路径
网站中可以在类文件中用绝对方式访问Server对象、Session、Response、Request等对象:System.Web.HttpContext.Current.Server.MapPath()System.Web.HttpContext.Current.SessionSystem.Web.HttpContext.Current.ResponseSystem.Web.HttpContext.Current.Request补充:1、判定一个给定的路径是否有效,合法通过Path.GetInvalidPathChars或Path.GetInvalidFileNameChars方法获得非法的路径/文件名字符,可以根据它来判断路径中是否包含非法字符;2、如何确定一个路径字符串是表示目录还是文件 使用Directory.Exists或File.Exist方法,如果前者为真,则路径表示目录;如果后者为真,则路径表示文件上面的方法有个缺点就是不能处理那些不存在的文件或目录。这时可以考虑使用Path.GetFileName方法获得其包含的文件名,如果一个路径不为空,而文件名为空那么它表示目录,否则表示文件;3、获得路径的某个特定部分 Path.GetDirectoryName :返回指定路径字符串的目录信息。 Path.GetExtension :返回指定的路径字符串的扩展名。 Path.GetFileName :返回指定路径字符串的文件名和扩展名。 Path.GetFileNameWithoutExtension :返回不具有扩展名的路径字符串的文件名。 Path.GetPathRoot :获取指定路径的根目录信息。4、准确地合并两个路径而不用去担心那个烦人的“\”字符 使用Path.Combine方法,它会帮你处理烦人的“\”。5、获得系统目录的路径 Environment.SystemDirectory属性:获取系统目录的完全限定路径 Environment.GetFolderPath方法:该方法接受的参数类型为Environment.SpecialFolder枚举,通过这个方法可以获得大量系统 文件夹的路径,如我的电脑,桌面,系统目录等 Path.GetTempPath方法:返回当前系统的临时文件夹的路径6、判断一个路径是绝对路径还是相对路径 使用Path.IsPathRooted方法7、读取或设置当前目录 使用Directory类的GetCurrentDirectory和SetCurrentDirectory方法8、使用相对路径 设置当前目录后(见上个问题),就可以使用相对路径了。对于一个相对路径,我们可以使用Path.GetFullPath方法获得它的完 全限定路径(绝对路径)。 注意:如果打算使用相对路径,建议你将工作目录设置为各个交互文件的共同起点,否则可能会引入一些不易发现的安全隐患,被恶意用户利用来访问系统文件。9、文件夹浏览对话框(FolderBrowserDialog类)主要属性: Description:树视图控件上显示的说明文本,如上图中的“选择目录–练习”;RootFolder:获取或设置从其开始浏览的根文件夹,如上图中设置的我的电脑(默认为桌面);SelectedPath:获取或设置用户选定的路径,如果设置了该属性,打开对话框时会定位到指定路径,默认为根文件夹,关闭对话框时根据该属性获取用户用户选定的路径; ShowNewFolderButton:获取或设置是否显示新建对话框按钮;主要方法: ShowDialog:打开该对话框,返回值为DialogResult类型值,如果为DialogResult.OK,则可以由SelectedPath属性获取用户选定的路径;=====================================================================1. System.Diagnostics.Process.GetCurrentProcess().MainMole.FileName-获取模块的完整路径。2.System.Environment.CurrentDirectory-获取和设置当前目录(该进程从中启动的目录)的完全限定目录。3.System.IO.Directory.GetCurrentDirectory()-获取应用程序的当前工作目录。这个不一定是程序从中启动的目录,有可能程序放在C:\xxx里,这个函数有可能返回C:\Documents and Settings\ZYB\,或者C:\Program Files\Adobe\,有时不一定返回什么。4.System.AppDomain.CurrentDomain.BaseDirectory-获取程序的基目录。5.System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase-获取和设置包括该应用程序的目录的名称。6. System.Windows.Forms.Application.StartupPath-获取启动了应用程序的可执行文件的路径。效果和2、5一样。只是5返回的字符串后面多了一个"\"而已7.System.Windows.Forms.Application.ExecutablePath-获取启动了应用程序的可执行文件的路径及文件名,效果和1一样。对于Windows程序 和Web 应用程序来说,他们运行的路径是不一样的,所以关键是判断当前运行的程序是哪种程序.于是我们可以使用如下的代码string path = "";if (System.Environment.CurrentDirectory ==AppDomain.CurrentDomain.BaseDirectory)//Windows应用程序则相等…{path = AppDomain.CurrentDomain.BaseDirectory;}else…{path = AppDomain.CurrentDomain.BaseDirectory + "Bin\";}这样如果我们写了一个类库,类库中用到了Assembly.LoadFrom,由于是通用类库,所以可能用到Windows程序中也可能用到Web中,那么用上面的代码就很方便了.1、Server.MapPath2、System.Windows.Forms.StartupPath3、Type.Assembly.Location方法2可以应用于控制台应用程序,WinForm应用程序,Windows服务,方法1可以应用于Web应用程序,方法3都可以应用。但方法3是加载应用程序的路径。如果是Web应用程序,取得的路径是:C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files目录。所以Web项目还是使用Server.MapPath吧。否则建议使用方法2。如果自己新建类库。可以加入对System.Windows.Forms.StartupPath的引用后使用。
❾ C#如何实现获得一个文件夹的路径
总结C#获取当前路径的7种方法 C#获取当前路径的方法如下: 1. System.Diagnostics.Process.GetCurrentProcess().MainMole.FileName -获取模块的完整路径。 2. System.Environment.CurrentDirectory -获取和设置当前目录(该进程从中启动的目录)的完全限定目录。 3. System.IO.Directory.GetCurrentDirectory() -获取应用程序的当前工作目录。这个不一定是程序从中启动的目录啊,有可能程序放在C:\www里,这个函数有可能返回C:\Documents and Settings\ZYB\,或者C:\Program Files\Adobe\,有时不一定返回什么东东,我也搞不懂了。 4. System.AppDomain.CurrentDomain.BaseDirectory -获取程序的基目录。 5. System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase -获取和设置包括该应用程序的目录的名称。 6. System.Windows.Forms.Application.StartupPath -获取启动了应用程序的可执行文件的路径。效果和2、5一样。只是5返回的字符串后面多了一个"\"而已 7. System.Windows.Forms.Application.ExecutablePath -获取启动了应用程序的可执行文件的路径及文件名,效果和1一样。
❿ C# 如何查找指定文件夹 并获得它的路径
你需要找到这个文件夹的盘符,或者指定到它的父级,再使用System.IO.Directory.GetDirectories(path)获取它的子文件夹信息.
未经允许不得转载:山九号 » c获取指定文件夹路径|C语言怎么读取某一文件夹下的所有文件夹和文件