-2

文字列変数にファイルのパスを割り当てることができるかどうか疑問に思っていますか? はいの場合、ファイルを動的に更新することは可能ですか? ファイルを動的に作成しようとしていますが (これは可能です)、これらの動的に作成されたファイルを文字列変数にリンクしたいと考えています。助けてください。前もって感謝します。

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());
4

3 に答える 3

3
String s = new File("xyz.txt").getAbsolutePath();

また

String s = new File("xyz.txt").getCanonicalPath();

上記の両方が (私の場合)c:\dev\xyz.txtを string に割り当てますs

于 2013-06-03T06:54:09.467 に答える
1

完全なシステム パスを取得するには、windows または 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 のようなフル パスを出力します。

于 2013-06-03T07:08:43.493 に答える
0

これを行うコードは次のとおりです。

File file = new File("C:\\testfolder\\test.cfg");
String absolutePath = file.getAbsolutePath();

getAbsolutePath API について、javadoc は次のように述べています。

getAbsolutePath

public String getAbsolutePath() この抽象パス名の絶対パス名文字列を返します。この抽象パス名がすでに絶対パス名である場合、パス名文字列は、getPath() メソッドによるかのように単純に返されます。この抽象パス名が空の抽象パス名である場合、システム プロパティ user.dir によって指定された現在のユーザー ディレクトリのパス名文字列が返されます。それ以外の場合、このパス名はシステムに依存する方法で解決されます。UNIX システムでは、現在のユーザー ディレクトリに対して解決することにより、相対パス名が絶対パス名になります。Microsoft Windows システムでは、相対パス名は、パス名で指定されたドライブの現在のディレクトリ (存在する場合) に対して解決することにより、絶対パス名になります。そうでない場合は、現在のユーザー ディレクトリに対して解決されます。

戻り値: この抽象パス名と同じファイルまたはディレクトリを示す絶対パス名文字列

于 2013-06-03T07:04:44.660 に答える