我試圖將字符串轉換爲日期格式。我嘗試很多方法來做到這一點。但沒有成功。我的字符串是「2012年1月17日」。我想將其轉換爲「2011-10-17」。 有人可以告訴我這樣做的方式嗎?如果你有任何經驗的例子,這將是一個真正的幫助!將字符串轉換爲日期格式在android
13
A
回答
25
public class DateFormatClass {
public static void main(String[] args) {
String mytime="Jan 17, 2012";
SimpleDateFormat dateFormat = new SimpleDateFormat(
"MMM dd, yyyy");
Date myDate = null;
try {
myDate = dateFormat.parse(mytime);
} catch (ParseException e) {
e.printStackTrace();
}
SimpleDateFormat timeFormat = new SimpleDateFormat("yyyy-MM-dd");
String finalDate = timeFormat.format(myDate);
System.out.println(finalDate);
}
}
2
我建議使用Joda Time,它是用於Java中date/dateTime操作的最好和最簡單的庫,它是ThreadSafe(與Java中的默認格式化類相反)。
你使用這種方式:
// Define formatters:
DateTimeFormatter inputFormat = DateTimeFormat.forPattern("MMM dd, yyyy");
DateTimeFormatter outputFormat = DateTimeFormat.forPattern("yyyy-MM-dd");
// Do your conversion:
String inputDate = "Jan 17, 2012";
DateTime date = inputFormat.parseDateTime(inputDate);
String outputDate = outputFormat.print(date);
// or:
String outputDate = date.toString(outputFormat);
// or:
String outputDate = date.toString("yyyy-MM-dd");
// Result: 2012-01-17
它還提供了大量的會議日期的操作有用的方法(加一天,時間差,等)。它提供了大多數類的接口,以實現簡單的可測試性和依賴注入。
1
爲什麼要將字符串轉換爲字符串嘗試將當前時間以毫秒爲單位轉換爲字符串, 此方法會將您的毫秒轉換爲數據合成。
public static String getTime(long milliseconds)
{
return DateFormat.format("MMM dd, yyyy", milliseconds).toString();
}
您還可以嘗試DATE FORMATE類以便更好地理解。
5
String format = "yyyy-MM-dd";
SimpleDateFormat sdf = new SimpleDateFormat(format, Locale.US);
System.err.format("%30s %s\n", format, sdf.format(new Date(0)));
sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
System.err.format("%30s %s\n", format, sdf.format(new Date(0)));
在PDT時間區域中運行時,將會產生以下輸出:
yyyy-MM-dd 1969-12-31
yyyy-MM-dd 1970-01-01
欲瞭解更多信息看here
1
You can't convert date from one format to other. while you are taking the date take you have take the date which ever format the you want. If you want the date in yyyy-mm-dd. You can get this by using following way.
java.util.Calendar calc = java.util.Calendar.getInstance();
int day = calc.get(java.util.Calendar.DATE);
int month = calc.get(java.util.Calendar.MONTH)+1;
int year = calc.get(java.util.Calendar.YEAR);
String currentdate = year +"/"+month +"/"+day ;
0
public static Date getDateFromString(String date) {
Date dt = null;
if (date != null) {
for (String sdf : supportedDateFormats) {
try {
dt = new Date(new SimpleDateFormat(sdf).parse(date).getTime());
break;
} catch (ParseException pe) {
pe.printStackTrace();
}
}
}
return dt;
}
+0
使用這種方法它對我的工作很好,我也可以以毫秒爲單位獲取日期。 – 2016-08-18 06:56:29
相關問題
- 1. android將字符串轉換爲日期格式轉換回字符串
- 2. 字符串轉換爲日期格式
- 3. 將字符串格式轉換爲格式日期樣式
- 4. Android將字符串轉換爲日期
- 5. Android將字符串轉換爲日期
- 6. 將字符串轉換爲日期並格式化日期
- 7. 將日期字符串轉換爲SQL可讀日期格式
- 8. C#將日期從字符串轉換爲日期格式
- 9. 如何將日期字符串轉換爲sql日期格式
- 10. 將日期字符串轉換爲日期格式
- 11. 將日期字符串轉換爲需要的日期字符串格式
- 12. 將字符串轉換爲包含字符的日期格式
- 13. 在MDX中將「YYYYMMDD」格式字符串轉換爲日期?
- 14. 在jsp中將字符串轉換爲日期格式
- 15. 在Stata中將字符串轉換爲日期格式
- 16. 在SQL Server 2008中將字符串轉換爲日期格式
- 17. 轉換日期格式字符串
- 18. 轉換成字符串日期格式
- 19. 將字符串轉換爲日期並將日期轉換回字符串
- 20. 將字符串轉換日期到另一個日期格式
- 21. 字符串日期轉換爲sql日期格式MM/dd/yyyy?
- 22. 轉換PHP日期字符串「月」日期格式爲大寫
- 23. 將Android的日期字符串轉換爲日期對象
- 24. 如何在python中將字符串日期轉換爲日期時間格式?
- 25. 將字符串轉換爲日期時間格式和日期只在C#
- 26. 如何在MySQL中將日期字符串轉換爲日期格式
- 27. 如何在oracle10g中將字符串日期轉換爲日期格式
- 28. 將日期格式轉換爲字符串
- 29. 如何將字符串轉換爲iOS中的日期格式?
- 30. 將字符串轉換爲yyyymmdd格式的日期時間
不是一個真正的Android的問題 – Guillaume 2012-01-16 11:00:17