绝对路径就是”D:\\a\\xx.txt"的形式,你可以直接指定,也可以用CFileDialogd出对话框由用户界面指定;
相对路径分默认路径和工作路径获取两种。你可以用".\\aa\\xx.txt"指定默认目录子目录或者省略前面的.\\也是可以的;工作路径获取比较靠谱(因为默认路径可能会造成不确定性,在程序运行过程中可能会被其它原因改变),工作路径要在程序运行入口的时候通过GetCurrentDirectory函数获取并保存起来,方便随时使用,这个是一个例如"d:\\yourProject\\"的字符串形式,每次拼接子目录和文件名即可,示例代码如下:
你可以,提取完整路径之后,再提取。文件名和扩展名%~nx0
然后用set
将完整路径的文件名+扩展名替换未空。
使用方法。
set
path=%path:文件名和扩展名=%
然后得出的%path%即使路径目录。
还有一个方法就是
得到完整文件路径,有CD进入
然后
%cd%
即使目录。
看这个,试试你就知道了。
@echo
off
set
paths=%0
cd
%paths%
echo
%cd%
pause
然后以你的为例。
@echo
off
set
pathA="C:\Work\1.txt"
cd
%patha%
echo
%cd%
pause
File类有两个常用方法可以得到文件路径一个是:getCanonicalPath(),另一个是:getAbsolutePath(),可以通过File类的实例调用这两个方法例如file.getAbsolutePath()其中file是File的实例对象。下面是一个具体例子:public class PathTest
{
public static void main(String[] args)
{
File file = new File(".\\src\\baidu")
System.out.println(file.getAbsolutePath())
try
{
System.out.println(file.getCanonicalPath())
} catch (IOException e)
{
e.printStackTrace()
}
}
}
getAbsolutePath()和getCanonicalPath()的不同之处在于,getCanonicalPath()得到的是一个规范的路径,而getAbsolutePath()是用构造File对象的路径+当前工作目录。例如在上面的例子中.(点号)代表当前目录。getCanonicalPath()就会把它解析为当前目录但是getAbsolutePath()会把它解析成为目录名字(目录名字是点号)。
下面是上面程序在我电脑上的输出:
G:\xhuoj\konw\.\src\baidu
G:\xhuoj\konw\src\baidu
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)