
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
如果你是单纯的要获取绝对路径,可以用1楼的方法如果你是要获取文件路径后对文件 *** 作,你可以用TextBox和FileUpload组合,把FileUpload的宽设为0后,这个组合看上去就仍然像一个FileUpload,然后在pageload里面写下面一行:
thisFileUpload1AttributesAdd("onchange", "documentgetElementById('" + TextBox1ClientID + "')value = thisvalue");
这样TextBox的text属性值就是所选文件的绝对路径值
这道题主要就是利用了String类的split()方法,进行多次调用,已经帮你实现了,代码如下:
public
class
Test{
public
static
void
main(String[]
args){
String
str
=
"c:/win/good/aaatxt;d:/win/good/bbbtxt;c:/win/cccctxt;";
//得到路径数组
String[]
fileRoot
=
strsplit(";");
String[]
fileName
=
null;
for(int
i
=
0;i
<
fileRootlength;i++){
if(fileRoot[i]
!=
null){
fileName
=
fileRoot[i]split("/");
//得到最终需要的文件名
Systemoutprintln
(fileName[fileNamelength-1]);
}
}
}
}
C#读取文件路径
//获取包含清单的已加载文件的路径或 UNC 位置。
public static string
sApplicationPath = AssemblyGetExecutingAssembly ( )Location;
//result: X:\xxx\xxx\xxxdll (dll文件所在的目录+dll文件名)
//获取当前进程的完整路径,包含文件名(进程名)。
string str = thisGetType ( )AssemblyLocation;
//result: X:\xxx\xxx\xxxexe (exe文件所在的目录+exe文件名)
//获取新的 Process 组件并将其与当前活动的进程关联的主模块的完整路径,包含文件名(进程名)。
string str = SystemDiagnosticsProcessGetCurrentProcess (
)MainModuleFileName;
//result: X:\xxx\xxx\xxxexe (exe文件所在的目录+exe文件名)
//获取和设置当前目录(即该进程从中启动的目录)的完全限定路径。
string str = SystemEnvironmentCurrentDirectory;
//result: X:\xxx\xxx (exe文件所在的目录)
//获取当前 Thread 的当前应用程序域的基目录,它由程序集冲突解决程序用来探测程序集。
string str = SystemAppDomainCurrentDomainBaseDirectory;
//result: X:\xxx\xxx\ (exe文件所在的目录+"\")
//获取和设置包含该应用程序的目录的名称。
string str =
SystemAppDomainCurrentDomainSetupInformationApplicationBase;
//result: X:\xxx\xxx\ (exe文件所在的目录+"\")
//获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称。
string str = SystemWindowsFormsApplicationStartupPath;
//result: X:\xxx\xxx (exe文件所在的目录)
//获取启动了应用程序的可执行文件的路径,包括可执行文件的名称。
string str = SystemWindowsFormsApplicationExecutablePath;
//result: X:\xxx\xxx\xxxexe (exe文件所在的目录+exe文件名)
//获取应用程序的当前工作目录(不可靠)。
string str = SystemIODirectoryGetCurrentDirectory ( );
//result: X:\xxx\xxx (exe文件所在的目录)
在系统服务中最好用这个方式去取路径
string stmp = AssemblyGetExecutingAssembly ( )Location;
stmp = stmpSubstring ( 0 , stmpLastIndexOf ( '\\' )
);//删除文件名
if ( pathType == 1 )
return stmp + @"\inputLogxml";
else if ( pathType == 2 )
return stmp + @"\MiddleDBxml";
else
return stmp + @"\AppNoxml";
using SystemIO;
string path = "d:asdfasdfbmp";
string fileName = PathGetFileName(path); //文件名
string ext = PathGetExtension(path); //扩展名
以上就是关于获取文件夹下的一个文件路径怎么写全部的内容,包括:获取文件夹下的一个文件路径怎么写、asp.net中如何获取文件的绝对路径、java代码实现从路径字符串中获取文件名称等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)