C# 获取项目下文件夹路径

C# 获取项目下文件夹路径,第1张

你没有理解项目和程序的区别。

实际运行的程序是没有所谓项目的概念的(不可能把源代码也复制过去吧?!),也就是说,你的应用程序运行时的目录下一开始是不会自动地产生ClientPhoto这个文件夹的(除非你在项目里将这个文件夹中的文件设置为“复制到输出目录”。)

所以你要做的,第一件事就是先获取应用程序的路径,然后判断这个路径下的目录存在不存在,如果不存在,要首先创建一个。

我们知道“ClientPhoto”其实只是一个相对路径而已,要获得绝对路径,首先要知道应用程序当前的绝对路径:只需要检索SystemWindowsFormsApplicationStartupPath这个属性即可。

string path = SystemWindowsFormsApplicationStartupPath;

然后将应用程序当前路径path和字符串“ClientPhoto”组合成为一个完整的文件夹绝对路径folder(这时候就是绝对路径了,但是,还没完!)。

string folder = SystemIOPathCombine(path, "ClientPhoto");

接着判断 folder 指定的文件夹是否存在。

bool folderExists = SystemIODirectoryExists(folder);

如果文件夹不存在,则创建它。如果创建不了,会引发异常,请自行捕捉这个异常。

if(!folderExists)

{

    SystemIODirectoryCreateDirectory(folder);

}

最后才返回路径 folder。

完整代码:

private string GetFolderPath()

{

    string folder = PathCombine(ApplicationStartupPath, "ClientPhoto");

    if(!DirectoryExists(folder))

    {

        DirectoryCreateDirectory(folder);

    }

    return folder;

}

通过CMD的DIR命令得到某目录下的路径以及文件列表的具体步骤:

1、获取文件夹列表:在cmd命令提示符下进入要获取文件夹目录的文件夹。然后在当前路径下输入dir/ad/s/b命令,即可列出当前目录下的所有文件夹及子文件夹。如图示例:

输入dir/ad/s/b命令

2、显示结果如下图,除了路径和名称外并不显示其他的额外信息

显示结果

3、获取某一文件夹下的内容列表,只要输入dir/b命令即可

输入dir/b命令

4、将显示内容输出文本文件,就可以复制到word文档或excel中进行编辑。命令如下,在所输入的命令后添加“空格”+“>”+文件名称即可,如图示例:

添加“空格”+“>”+

5、命令执行后,我们就可以在filelisttxt中找到当前目录内的文件或目录的清单!

你好,提问者:

指定资源路径的方法有两种:

一种是绝对路径,一种是相对路径。

获取当前类的所在工程路径; 

File f = new File(thisgetClass()getResource("/")getPath()); 

Systemoutprintln(f); 

获取当前类的绝对路径; 

File f = new File(thisgetClass()getResource("")getPath()); 

Systemoutprintln(f); 

获取当前类的所在工程路径; 

File directory = new File("");//参数为空 

String courseFile = directorygetCanonicalPath() ; 

Systemoutprintln(courseFile); 

获取当前工程src目录下selectedtxt文件的路径:

URL xmlpath = thisgetClass()getClassLoader()getResource("selectedtxt"); 

Systemoutprintln(xmlpath);

File类有两个常用方法可以得到文件路径一个是:getCanonicalPath(),另一个是:getAbsolutePath(),可以通过File类的实例调用这两个方法例如filegetAbsolutePath()其中file是File的实例对象。下面是一个具体例子:

public class PathTest

{

public static void main(String[] args)

{

File file = new File("\\src\\baidu");

Systemoutprintln(filegetAbsolutePath());

try

{

Systemoutprintln(filegetCanonicalPath());

} catch (IOException e)

{

eprintStackTrace();

}

}

}

getAbsolutePath()和getCanonicalPath()的不同之处在于,getCanonicalPath()得到的是一个规范的路径,而getAbsolutePath()是用构造File对象的路径+当前工作目录。例如在上面的例子中(点号)代表当前目录。getCanonicalPath()就会把它解析为当前目录但是getAbsolutePath()会把它解析成为目录名字(目录名字是点号)。

下面是上面程序在我电脑上的输出:

G:\xhuoj\konw\\src\baidu

G:\xhuoj\konw\src\baidu

以上就是关于C# 获取项目下文件夹路径全部的内容,包括:C# 获取项目下文件夹路径、如何通过CMD的DIR命令得到某目录下的路径以及、java获取指定资源文件路径的几种方法等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/10059406.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存