我想知道是否可以为文件路径分配字符串变量?如果是,那么是否可以动态更新文件? 我正在尝试动态创建文件(我能够这样做),但我想将这些动态创建的文件链接到String变量。 请帮忙。提前致谢。
File dir = new File("Data");
if(!dir.exists()){
dir.mkdir();
}
String filename = "file1";
File tagfile = new File(dir, filename+".txt");
if(!tagfile.exists()){
tagfile.createNewFile();
}
System.out.println("Path : " +tagfile.getAbsolutePath());
答案 0 :(得分:3)
String s = new File("xyz.txt").getAbsolutePath();
或
String s = new File("xyz.txt").getCanonicalPath();
上述两个(在我的情况下)c:\dev\xyz.txt
分配给字符串s
。
答案 1 :(得分:1)
获取完整的系统路径窗口或linux
public static void main(String []args){
String path = "../p.txt";//works on windows or linux, assumes you are not in root folder
java.io.File pa1 = new java.io.File (path);
String s = null;
try {
s = pa1.getCanonicalFile().toString();
System.out.println("path " + s);
} catch (Exception e) {
System.out.println("bad path " + path);
e.printStackTrace();
}
打印完整路径,如c:\ projects \ file \ p.txt
答案 2 :(得分:0)
以下是执行此操作的代码:
File file = new File("C:\\testfolder\\test.cfg");
String absolutePath = file.getAbsolutePath();
这就是javadoc对getAbsolutePath API所说的内容:
<强> getAbsolutePath 强>
public String getAbsolutePath()返回绝对路径名字符串 这个抽象路径名。如果这个抽象路径名已经存在 绝对,然后简单地返回路径名字符串,就好像由 getPath()方法。如果此抽象路径名是空摘要 pathname然后是当前用户目录的路径名字符串 由系统属性user.dir命名,返回。否则这个 pathname以依赖于系统的方式解析。在UNIX系统上,a 相对路径名通过将其与当前路径相对应而成为绝对路径名 用户目录。在Microsoft Windows系统上,相对路径名是 通过将其解析为当前目录而使其成为绝对的 由路径名命名的驱动器,如果有的话;如果没有,它将被解决 当前的用户目录。
返回:表示相同文件或的绝对路径名字符串 目录作为此抽象路径名