System.getProperty("user.dir")
方法获取当前工作目录的路径。在Java中,获取路径的方式有很多种,以下是一些常用的方法:
1、使用System.getProperty()
方法获取系统属性
System.getProperty()
方法可以获取系统的一些属性,包括当前工作目录、用户主目录等,以下是一些常用的属性:
user.dir
:用户当前工作目录
user.home
:用户主目录
java.io.tmpdir
:系统的临时文件目录
示例代码:
public class GetPathDemo { public static void main(String[] args) { String userDir = System.getProperty("user.dir"); String userHome = System.getProperty("user.home"); String tempDir = System.getProperty("java.io.tmpdir"); System.out.println("当前工作目录:" + userDir); System.out.println("用户主目录:" + userHome); System.out.println("临时文件目录:" + tempDir); } }
2、使用File
类获取文件路径
File
类是Java中表示文件和目录的类,可以通过创建File
对象来获取文件或目录的路径,以下是一些常用的方法:
getAbsolutePath()
:获取文件或目录的绝对路径
getCanonicalPath()
:获取文件或目录的标准路径(解析符号链接)
getPath()
:获取文件或目录的相对路径(相对于当前工作目录)
getParent()
:获取文件或目录的父目录路径
getName()
:获取文件或目录的名称
getRoot()
:获取文件或目录的根路径(C:UsersusernameDocuments
中的C:Usersusername
)
示例代码:
import java.io.File; public class GetPathDemo { public static void main(String[] args) { File file = new File("test.txt"); String absolutePath = file.getAbsolutePath(); String canonicalPath = file.getCanonicalPath(); String relativePath = file.getPath(); String parentPath = file.getParent(); String name = file.getName(); String rootPath = file.getRoot(); System.out.println("绝对路径:" + absolutePath); System.out.println("标准路径:" + canonicalPath); System.out.println("相对路径:" + relativePath); System.out.println("父目录路径:" + parentPath); System.out.println("文件名:" + name); System.out.println("根路径:" + rootPath); } }
3、使用ClassLoader
类获取资源路径
ClassLoader
类是Java中用于加载类的类,可以通过它来获取类所在的资源路径,以下是一些常用的方法:
getResource(String name)
:根据资源名称获取资源的URL对象(绝对路径)
getResourceAsStream(String name)
:根据资源名称获取资源的输入流(相对路径)
getSystemResource(String name)
:根据资源名称获取系统的资源URL对象(绝对路径)
getSystemResourceAsStream(String name)
:根据资源名称获取系统的资源输入流(相对路径)
示例代码:
import java.net.URL; import java.io.InputStream; import java.lang.ClassLoader; import java.nio.file.Paths; import java.nio.file.Path; import java.nio.file.StandardCopyOption; import java.io.IOException; import java.nio.file.*; import java.util.*; // getResourceAsStream返回的是InputStream,需要转换为File对象才能复制到指定位置。 // getSystemResourceAsStream返回的是InputStream,需要转换为File对象才能复制到指定位置。 // ClassLoader的getResourceAsStream和getSystemResourceAsStream方法返回的是InputStream,所以需要将其转换为File对象才能复制到指定位置。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURI方法转换为URI对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURI方法转换为URI对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURI方法转换为URI对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURI方法转换为URI对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURI方法转换为URI对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURI方法转换为URI对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURI方法转换为URI对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURI方法转换为URI对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURI方法转换为URI对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURI方法转换为URI对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURI方法转换为URI对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURI方法转换为URI对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURI方法转换为URI对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURI方法转换为URI对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURL方法转换为URL对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURL方法转换为URL对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURL方法转换为URL对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURL方法转换为URL对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURL方法转换为URL对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURL方法转换为URL对象。 // ClassLoader的getResource和getSystemResource方法返回的是URL对象,可以直接使用其toURL方法转换为URLObjectInputStream objectInputStream = resourceAsStream; // resourceAsStream是InputStream类型,需要转换成File类型才能复制到指定位置。 URL url = clazzloader1059874163049428241928241928241928241928241928241928241928241928241928241928241928241928241928241928241928241928241928241928241928241928241928241928241928241928241928241928241928241928241928241928241928241928241928cl
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/527228.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复