why construct file with "", the path of the file return "/"?

J

junzhang1983

l am a little puzzled, why the file's behavior like this:

File fl = new File("","1.txt");
System.out.println(fl.getName());
System.out.println(fl.getParent());
System.out.println(fl.getPath());
System.out.println(fl.getAbsolutePath());
try {
System.out.println(fl.getCanonicalPath());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

the output is:
1.txt
\
\1.txt
D:\1.txt
D:\1.txt

why "" path, java process it as "/"?
 
K

Knute Johnson

l am a little puzzled, why the file's behavior like this:

File fl = new File("","1.txt");
System.out.println(fl.getName());
System.out.println(fl.getParent());
System.out.println(fl.getPath());
System.out.println(fl.getAbsolutePath());
try {
System.out.println(fl.getCanonicalPath());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

the output is:
1.txt
\
\1.txt
D:\1.txt
D:\1.txt

why "" path, java process it as "/"?

From the docs

"If parent is the empty abstract pathname then the new File instance is
created by converting child into an abstract pathname and resolving the
result against a system-dependent default directory."
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,744
Messages
2,569,483
Members
44,901
Latest member
Noble71S45

Latest Threads

Top