从 java SimpleDateFormat 获取模式字符串
2022-09-01 15:27:47
我有一个SimpleDateFormat对象,我从一些国际化实用程序中检索到它。解析日期都很好,但我希望能够向我的用户显示格式提示,例如“MM / dd / yyyy”。有没有办法从 SimpleDateFormat 对象获取格式设置模式?
我有一个SimpleDateFormat对象,我从一些国际化实用程序中检索到它。解析日期都很好,但我希望能够向我的用户显示格式提示,例如“MM / dd / yyyy”。有没有办法从 SimpleDateFormat 对象获取格式设置模式?
如果您只需要获取给定区域设置的模式字符串,则以下内容对我有用:
/* Obtain the time format per current locale */
public String getTimeFormat(int longfmt) {
Locale loc = Locale.getDefault();
int jlfmt =
(longfmt == 1)?java.text.SimpleDateFormat.LONG:java.text.SimpleDateFormat.SHORT;
SimpleDateFormat sdf =
(SimpleDateFormat)SimpleDateFormat.getTimeInstance(jlfmt, loc);
return sdf.toLocalizedPattern();
}
/* Obtain the date format per current locale */
public String getDateFormat(int longfmt) {
Locale loc = Locale.getDefault();
int jlfmt =
(longfmt == 1)?java.text.SimpleDateFormat.LONG:java.text.SimpleDateFormat.SHORT;
SimpleDateFormat sdf =
(SimpleDateFormat)SimpleDateFormat.getDateInstance(jlfmt, loc);
return sdf.toLocalizedPattern();
}
给定区域设置的 getDateInstance 和 getTimeInstance 是这里的关键。