导航:首页 > 文件目录 > c获取文件夹路径

c获取文件夹路径

发布时间:2022-09-16 19:40:44

⑴ C# 获取系统文件夹路径

楼主 这里有篇别人写的文章 看下对你有用没。
系统特殊文件夹是包含公共信息的文件夹,如“Program Files”、“Programs”、“System”或“Startup”。特殊文件夹在默认情况下由系统设置,或者由用户在安装 Windows 的某个版本时显式进行设置。

Environment.GetFolderPath 方法
获取指向由指定枚举标识的系统特殊文件夹的路径。

命名空间:System
public 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语言如何获取用户通过键盘输入的文件目录中的文件名和文件路径,ballball大佬帮帮我🙏求代码

int main()
{
string s = "c:\\abc\\def\\text.txt";
int xie_index = s.find_last_of('\\'); 制// 路径中最后一个\的位置
string file_dirname = s.substr(0, xie_index + 1);
string file_basename = s.substr(xie_index + 1, s.size());
cout << file_dirname << endl << file_basename << endl;
}

⑶ C#获取创建的文件夹路径

Console.WriteLine("输入文件夹名
:");
string
dir
=
"C:\\oet\\"
+
Console.ReadLine();
Directory
.
CreateDirectory
(dir);
//dir就是你要的路径.

⑷ c语言如何获得文件当前路径

http://hi..com/andywangcn/item/7633efda5517baf9ca0c39c6
获得双斜杠路径不包含文件名
TCHAR _szPath[MAX_PATH + 1]={0};
GetMoleFileName(NULL, _szPath, MAX_PATH);
(_tcsrchr(_szPath, _T('\\')))[1] = 0;//删除文件名,只获得路径 字串
CString strPath;
for (int n=0;_szPath[n];n++)
{
if (_szPath[n]!=_T('\\'))
{
strPath +=_szPath[n] ;
}
else
{
strPath += _T("\\\\");
}
}
MessageBox(strPath);//输出==e:\\program\\Debug\\
//头文件用到 windows.h

⑸ 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#中怎么获得当前路径

网站中可以在类文件中用绝对方式访问Server对象、Session、Response、Request等对象:

System.Web.HttpContext.Current.Server.MapPath()
System.Web.HttpContext.Current.Session
System.Web.HttpContext.Current.Response
System.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.MapPath

2、System.Windows.Forms.StartupPath

3、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的引用后使用。

⑺ 使用vc,如何获取win7的用户文件夹路径 C:\Users\Public和C:\Users\用户名

你好,你可以用以下方法来获得该路径。

在Windows里,用户的特殊路径都存放在注册表里。

位置在:HEY_CURRENT_下面

获取的方法:

HKEYmyKey;

if(ERROR_SUCCESS!=RegOpenKey(HKEY_CURRENT_USER,"Software\Microsoft\Windows\CurrentVersion\Explorer\ShellFolders",&myKey))

{

cout<<"注册表打开失败!"<<endl;

return1;

}

DWORDdwType;

DWORDdwSize=200;

charstring[200];

if(ERROR_SUCCESS!=RegQueryValueEx(myKey,(LPSTR)"Desktop",NULL,&dwType,(BYTE*)string,&dwSize))

{

cout<<"读取desktop数据失败!"<<endl;

return1;

}

RegCloseKey(myKey);

但是该子项下面的路径都是你要的那个路径的子路径(如:C:UsersPublicDesktop)。

你可以通过使用下面几个函数的组合来获得父路径(C:UsersPublic):

TCHARszPath[_MAX_PATH];

将子路径strcpy入szPath;

TCHARszDrive[_MAX_DRIVE];

TCHARszDir[_MAX_DIR];

TCHARszFName[_MAX_FNAME];

TCHARszExt[_MAX_EXT];

_tsplitpath(szPath,szDrive,szDir,szFName,szExt);

_tmakepath(szPath,szDrive,szDir,_T(""),_T(""));

希望我的回答能够对你有所帮助!

⑻ c语言如何获得文件当前路径

C语言里
在main函数来的第二个参数里面,自
保存着当前程序运行的目录
也就是argv[0]
main( int argc, char *argv[])
{
printf("%s ", argv[0] );
}
就是文件当前所在位置
不过需要注意的一点是
这个路径里面保存了当前文件的文件名
如果你只是需要路径的话还需要自己操作一下

main(int a,char *c[])
{
char s[100];
int i;
//把路径保存到字符串s里
strcpy(s,c[0]);
for(i=strlen(s); i>0 ; i--)
if( s[i] == '\\')
{
s[i]='\0';
break;
}
//找到最后一个 \ 并删除之后的内容
//最后输出的s,就是当前文件的路径了
puts(s);
}

⑼ 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 -1

int 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语言中如何得到当前文件所在位置

如果是通过open方式打开的,那么第一个参数就是文件路径信息:
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
int open(const char *path, int oflag, /* mode_t mode */...);

如果是通过fopen方式打开的,那么第一个参数就是文件路径信息:
#include <stdio.h>
FILE *fopen(const char *filename, const char *mode);

无论通过open还是fopen打开文件,都必须先知道文件路径信息,尽管可能是相对路径。
如果知道了filename的内容,我们就可以定位它的绝对路径,也就是你说的完全路径。

1. filename本身就是绝对路径,ok。
2. filename是相对路径,那么先通过getcwd获取进程的执行路径,然后再获取绝对路径即可。
#include <unistd.h>
extern char *getcwd(char *buf, size_t size);

但是,如果进程在打开文件后又执行了chdir、fchdir之类函数的话,估计就不能够再获取文件路径信息了。
#include <unistd.h>
int chdir(const char *path);
int fchdir(int fildes);

阅读全文

与c获取文件夹路径相关的资料

热点内容
末世黑暗种马 浏览:512
我马上要去看电影了英文翻译 浏览:979
ppt文件数据恢复内容 浏览:241
居家乐app怎么样 浏览:163
颜色 小说 浏览:735
飞猪APP怎么选座 浏览:553
81 xqad,tap 浏览:792
免费观看污片的网站 浏览:484
linux查找句子 浏览:833
政府大数据治理 浏览:699
韩国电影男主在楼上偷看女主 浏览:426
qq浏览器的皮肤文件夹在哪个文件夹 浏览:636
德赛西威2311升级 浏览:547
黑页怎么挂网站 浏览:567
看韩国视频的网址 浏览:100
广电网络慢如何连接联通服务器 浏览:368
韩国午夜爱情 浏览:557
word是二进制文件 浏览:495
魅族手机怎么给桌面文件夹改名 浏览:553
主角获得十二祖巫传承 浏览:540

友情链接