是否可以为String变量分配文件的绝对路径?

时间:2013-06-03 06:52:06

标签: java string file dynamic

我想知道是否可以为文件路径分配字符串变量?如果是,那么是否可以动态更新文件? 我正在尝试动态创建文件(我能够这样做),但我想将这些动态创建的文件链接到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());

3 个答案:

答案 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系统上,相对路径名是   通过将其解析为当前目录而使其成为绝对的   由路径名命名的驱动器,如果有的话;如果没有,它将被解决   当前的用户目录。

     

返回:表示相同文件或的绝对路径名字符串   目录作为此抽象路径名