2016-08-08 6 views
3

Windows에서 실행되는 Java 응용 프로그램을 개발 중입니다. .properties 파일에 여러 개의 백 슬래시 ("\")가 있습니다. .properties-file의 특수 문자 ("")

dir=\\127.0.0.1\d$\dir\dir2\dir3 

내가 Spring 주석 Value를 사용하여 특성 dir 읽기 :이 파일이 모습입니다

@Value("${dir}") 
protected String dir; 

재산 dir이 코드에서 사용하는 경우이 문자열 127.0.0.1d$dirdir2dir3 발생합니다.

내가 시도 유니 코드는 다음과 같이 탈출 :

dir=\u005C\u005C127.0.0.1\u005Cd$\u005Cdir\u005Cdir2\u005Cdir3 

나는이 같은 탈출로 백 슬래시를 시도하십시오 시도의

dir=\\\\127.0.0.1\\d$\\dir\\dir2\\dir3 

모두를 결과 위의 문자열 \\127.0.0.1d$dirdir2dir3에 때 재산 dir 코드에서 사용됩니다.

코드에서 속성을 사용할 때 dir\\127.0.0.1\d$\dir\dir2\dir3으로 설정하려고합니다. 이 결과를 얻으려면 .properties-file이 어떻게 생겼을까요?

+0

작은 따옴표를 사용 했습니까? –

+0

@NicolasHenneaux 예. '127.0.0.1d $ dirdir2dir3'이됩니다. – user1766169

+0

슬래시를 사용하십시오. – Leon

답변

-1

백 슬래시 이스케이프는 컴파일러가 다음 문자가 유효하다는 것을 이해하고 결과를 String에 저장하기위한 것입니다. \\127.0.0.1\d$\dir\dir2\dir3을 입력하면 두 번째 것 (분명히)을 제외한 모든 백 슬래시가 이스케이프 처리됩니다. 여기서 String 개체를 사용하지 마십시오. Properties으로 시도하고 결과를 게시하십시오. 나는 같은 경험과 속성을 잘 사용했다.

+0

이것은 특성 파일입니다. 컴파일러는 그 근처에 절대 오지 않습니다. – EJP

+0

JVM도 있습니다. 백 슬래시가 발생하면 백 슬래시를 이스케이프하고 다음 문자를 '문자열'에 추가합니다. –

0

슬래시는 Windows에서 작동하는 이유 외에도 사용할 수 있습니다.