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

Forum statistics

Threads
473,982
Messages
2,570,186
Members
46,739
Latest member
Clint8040

Latest Threads

Top