私のコードでは、文字列値 (入力) を に変換する必要がありjava.sql.Date format
ます。私が直面している問題は、入力日付形式が定義されておらず、任意の形式である可能性があることです。たとえば、入力文字列は"Jan 10,2014"
または"01-10-2014"
または"2014/Jan/10"
です。したがって、この入力値を に変換する必要がありますjava.sql.Date(DD/MMMM/YYYY)
。この変換を行う方法はありますか?
2 に答える
4
それは不可能です。
dd/MM/yyyy
とを区別することはできませんMM/dd/yyyy
。
あなたは本当にフォーマットを知る必要があります。
于 2014-03-25T08:38:04.297 に答える
0
List
SimpledateFormat を使用して、上記のすべてのパターンを使用してみてください。
このようなもの:
SimpleDateFormat format1 = new SimpleDateFormat("MMM dd,yyyy");
SimpleDateFormat format2 = new SimpleDateFormat("MM-dd-yyyy");
SimpleDateFormat format3 = new SimpleDateFormat("yyyy/MMM/dd");
// Note: be sure about the format, or else you may end up assigning incorrect values
List<DateFormat> list = new ArrayList<DateFormat>();
list.add(format1);
list.add(format2);
list.add(format3);
for (DateFormat format : list) {
try {
System.out.println(format.parse("Jan 10,2014"));
// Match found. Take action
} catch (ParseException exception) {
// Ignore. Try other pattern
}
}
于 2014-03-25T08:39:45.443 に答える