NumberField 및 NumberFormat을 사용하고 있습니다. 로캘을 변경하지 않고 NumberConstants.decimalSeparator() 값을 변경하려면 어떻게해야합니까? 예를 들어 "갖고 싶다." 또는 ","모든 로케일의 소수 구분 기호로 사용됩니다. 사용자 정의 속성 파일 NumberConstants_bla.properties를 만들고 gxt가 표준 NumberConstants_ru_RU.properties 또는 NumberConstants_en_US.properties (현재 로케일에 따라 다름) 대신 강제로 사용할 수 있습니까? 이 파일을 어디에 배치해야합니까?NumberConstants.decimalSeparator() 값을 변경하십시오.
2
A
답변
1
자바에서는 DecimalFormatSymbols을 사용하여 소수 구분 기호를 설정할 수 있습니다.
// default symbols for the locale
DecimalFormatSymbols decimalFormatSymbols = DecimalFormatSymbols.getInstance();
// set your required separator
decimalFormatSymbols.setDecimalSeparator(',');
// create a decimal format and set your symbols
DecimalFormat format = new DecimalFormat();
format.setDecimalFormatSymbols(decimalFormatSymbols);
0
그런 다음 자신의 NumberFormat를 만드는 데 사용 (원하는 소수 구분 기호를 넣어하는) 자신의 NumberConstants을 만들 수 있습니다. 내 자신의 NumberConstants의
예 : MyFormat의
import com.google.gwt.i18n.client.constants.NumberConstants;
public class MyNumberConstants implements NumberConstants {
@Override
public String notANumber() {
return "NaN";
}
@Override
public String currencyPattern() {
return "#,##0.00\\u00A0\\u00A4";
}
@Override
public String decimalPattern() {
return "#,##0.###";
}
@Override
public String decimalSeparator() {
return ".";
}
@Override
public String defCurrencyCode() {
return "EUR";
}
@Override
public String exponentialSymbol() {
return "e";
}
@Override
public String globalCurrencyPattern() {
return "#,##0.00\\u00A0\\u00A4";
}
@Override
public String groupingSeparator() {
return "\\u00A0";
}
@Override
public String infinity() {
return "\u221E";
}
@Override
public String minusSign() {
return "-";
}
@Override
public String monetaryGroupingSeparator() {
return ",";
}
@Override
public String monetarySeparator() {
return "\\u00A0";
}
@Override
public String percent() {
return "%";
}
@Override
public String percentPattern() {
return "#,##0\\u00A0%";
}
@Override
public String perMill() {
return "\\u2030";
}
@Override
public String plusSign() {
return "+";
}
@Override
public String scientificPattern() {
return "#E0";
}
@Override
public String simpleCurrencyPattern() {
return "#,##0.00\\u00A0\\u00A4";
}
@Override
public String zeroDigit() {
return "0";
}
}
예 :
public class MyFormat extends NumberFormat{
public MyFormat(){
super(new MyNumberConstants(),"0.0", CurrencyList.get().getDefault(),true);
}
}
경고 :이 못생긴 해결하고 국제화에 문제를 일으킬 수 있습니다. 나는 모든 사람들을 위해 동일한 방식으로 표시되는 것으로 가정하는 일부 치수를 형식화하기 위해 사용합니다.
관련 문제
- 1. jqGrid 행 값을 변경하십시오.
- 2. bash - 배열의 값을 변경하십시오.
- 3. 배열의 라인 값을 변경하십시오.
- 4. 다른 입력 값을 기준으로 입력 값을 변경하십시오.
- 5. 프로그램 내에서 persistence.xml의 값을 변경하십시오.
- 6. 반복자에서 std :: map의 값을 변경하십시오.
- 7. jQuery Uniform.js를 사용하여 값을 변경하십시오.
- 8. jQuery를 통해 확인란의 값을 변경하십시오.
- 9. 스키마에서 객체 속성 값을 변경하십시오.
- 10. JavaScript의 함수 "this"값을 변경하십시오.
- 11. inflate 레이아웃의 텍스트 값을 변경하십시오.
- 12. WiX에서 XML 노드 값을 변경하십시오.
- 13. PHP를 통해 MySQL 데이터베이스의 값을 변경하십시오.
- 14. Makefile - 목표에 따라 변수 값을 변경하십시오.
- 15. 유효하지 않은 경우 텍스트 입력 값을 변경하십시오.
- 16. 프로그래밍 방식으로 EditorGrid의 셀 값을 변경하십시오.
- 17. 필드 값을 기준으로 mysql 테이블 조인을 변경하십시오.
- 18. 코드 뒤에서 js 변수 값을 변경하십시오.
- 19. 선택 상자를 기반으로 jquery 변수의 값을 변경하십시오.
- 20. 부호가있는 Java 애플릿의 "이름"값을 변경하십시오.
- 21. Django에서 요청할 때마다 쿠키 헤더 값을 변경하십시오.
- 22. asp.net에서 CSS 속성 값을 동적으로 변경하십시오.
- 23. .NET에서 빌드 후 어셈블리 특성 값을 변경하십시오.
- 24. 클릭하면 자바 스크립트로 선택 값을 변경하십시오.
- 25. Html.TextBoxFor 로그인시 오류가있는 경우 색상 값을 변경하십시오.
- 26. foreach()를 사용하여 객체를 반복하고 값을 변경하십시오.
- 27. jQuery를 사용하여 다른 드롭 다운의 값을 변경하십시오.
- 28. AS3에서 XML 객체의 속성 값을 변경하십시오.
- 29. Telerik RadEditor의 값을 Javascript/jQuery로 변경하십시오.
- 30. 이벤트를 트리거하지 않고 UISwitch 값을 변경하십시오.
com.google.gwt.i18n.client.NumberFormat에 대한 Infortunatly 옵션이 없습니다. ( – sandlex
아는 GWT 태그를 주목했습니다. 아무 경험도 없으므로 다른 제안을 할 수 없습니다. – Mark