2014-05-15 3 views
-2

입력을 구문 분석해야하는 일부 Java 코드를 경로 이름으로 테스트하고 있습니다. Java 7을 사용하고 있으므로 구문 분석 된 값은 Path 개체입니다. 경로 문자열이 그래서 PathJava 코드의 유효하지 않은 Linux 경로명에 대한 테스트 값

로 변환 할 수없는 경우

Paths.get 방법은 InvalidPathException

가 발생합니다, 내 구문 분석 코드를 확인하는 원인이됩니다 것을 내가 테스트 값을 필요로 강력 Paths.get 예외를 throw합니다. 즉, 올바른 경로가 아닌 String 값입니다. 유효한 경로를 구성하는 것은 시스템 (파일 시스템조차도)에 달려 있기 때문에 유효한 POSIX 경로가 아니거나 유효한 Linux 경로가 아닌 String에 특히 관심이 있습니다.

+0

[권장] (http://blog.stackoverflow.com/2011/07/its-ok-to-ask-and-answer-your-own-questions/)과 마찬가지로 나는 내 자신의 질문에 대답하고 있습니다. – Raedwald

답변

-1

POSIX 경로명 may not contain null characters. 따라서 단일 NUL 문자 (유니 코드 코드 포인트 0)로 구성된 String은 유효하지 않습니다. 즉, String"\0"입니다. Open JDK가 InvalidPathException이고, 메시지가 Nul character not allowed 인 것을 확인할 수 있습니다.

관련 문제