2016-06-20 3 views
3

현재 프로젝트에서 문자열에 대한 속성 파일을 사용하고 있습니다. 그런 다음 해당 문자열은 MessageFormat을 사용하여 "형식화"됩니다. 불행하게도, MessagFormat은 많은 작은 아포스트로피를 사용하는 프랑스어 등의 언어에서 약간의 방해가되는 작은 따옴표를 처리합니다.MessageFormat에 작은 따옴표 사용 방법

login.userUnknown=L'utilisateur {0} n'existe pas 

이, MessageFormat의 마음에 들지 않는 ...

그리고이 프랑스어로 번역됩니다 때

예를 들어

, 우리는이 항목

login.userUnknown=User {0} does not exist 

이 있다고 가정, 우리는 도착 나는 다음을 좋아하지 않는다. 즉 큰 따옴표를 사용해야한다.

login.userUnknown=L''utilisateur {0} n''existe pas 

내가 좋아하지 않는 이유는 어디에서나 맞춤법 검사 오류가 발생하기 때문입니다.

질문 : 따옴표가 두 배로 늘어나지 않지만 여전히 위치 표시 자리 표시 자 ({0}, {1} ...)를 사용하는 대신 아래 지침에 대한 대안을 찾고 있습니다. 내가 사용할 수있는 다른 것이 있습니까?

MessageFormat.format(Messages.getString("login.userUnkown"), username); 
+0

그건 오류 였어. 나는 실제로'MessageFormat'을 의미했다. – AbVog

답변

1

아니요. 우리가 javadoc에 따라 어떻게해야하는지에 대한 다른 방법은 없습니다. 해결 방법으로

A single quote itself must be represented by doubled single quotes '' throughout a String

, 당신이 프로그래밍 방식으로 일을 replace("'", "''")을 사용하거나이 특정 유스 케이스에 대한 대신 아포스트로피 문자를 사용할 수 인은 작은 따옴표를 사용하는 것보다 실제로 더 정확한 것입니다 할 수 있습니다.