我這樣做代碼:SimpleDataFormat是限制predefiend日期
SimpleDateFormat df = new SimpleDateFormat("MMMM dd, yyyy hh:mmaa");
df.setTimeZone(TimeZone.getTimeZone("America/New_York"));
Date parsedDate = df.parse("Dec 19, 2011 2:37pm");
結果:
java.text.ParseException: Unparseable date: "Dec 19, 2011 2:37pm"
據我所知:
Dec 19, 2011 2:37pm
year -> yyyy -> 2011
month -> MMM -> Dec
day in month -> d -> 2
a -> AM/PM -> pm
minute -> mm -> 37
Hour (1-12, AM/PM) -> h -> 3
什麼是錯的格式化?
你的格式有'MMMM',而不是'MMM'。另外,當你指定「一小時或兩位數小時」的「h」時,你已經指定了「hh」,意思是「2位小時」。 (否則它會是02:37)你可能想'd'而不是'dd'以及... –
好的,是否有任何問題設置dd:mmaa並使用例如下午2:37?因爲它以這種方式工作... – felipe
你的意思是'hh:mmaa'?好吧,我有點驚訝它的作用,但我會改變它,因此你的代碼反映你的意圖 - 你不*實際*需要兩位數,所以你不應該指定它們。只需使用'h'。 –