2017-10-10 4 views
0

File.getCanonicalPath는 NTFS 스트림을 처리 할 수 ​​없습니다? 내가 파일의 정식 경로를 얻을 수있는 간단한 자바 프로그램을 사용하고

import java.io.*; 

public class Foo { 
    public static void main (String[] args) 
    { 
     try { 
      File file = new File(args[0]); 
      System.out.println(file.getCanonicalPath()); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
    } 
} 

는 NTFS 스트림에 관해서, 그것은 예외를

C:\>java Foo c:\windows\system32\calc.exe::$DATA 
java.io.IOException: The filename, directory name, or volume label syntax is inc 
orrect 
     at java.io.WinNTFileSystem.canonicalize0(Native Method) 
     at java.io.WinNTFileSystem.canonicalize(Unknown Source) 
     at java.io.File.getCanonicalPath(Unknown Source) 
     at Foo.main(Foo.java:8) 

어떤 아이디어를 제기? 파일 이름이 * ?가 포함되어있는 경우

+0

돈이다 ' ": \ 사용자 \ SamDev 문서 \ \ NetBeansProjects \ MyThreads \ DIST \ README.txt 파일 C"$ 데이터 t 사용 ** : $ 데이터 ** 대신 -jar foo.jar에 자바를 사용하여 –

답변

0

당신은 때 java.io.IOException을 얻을 것이다 : 잘못된 당신이 때 java.io.IOException을 얻을 것이다 | : 인수 : 파일 이름, 디렉터리 이름 또는 볼륨 레이블 구문이 잘못

관련 문제