我有一个包含 YYYY-MM-DD
格式的日期的字符串。
您建议我如何以最佳方式将其转换为 DD-MM-YYYY
格式?
这就是我天真地做的方式:
import java.util.*;
public class test {
public static void main(String[] args) {
String date = (String) args[0];
System.out.println(date); //outputs: YYYY-MM-DD
System.out.println(doConvert(date)); //outputs: DD-MM-YYYY
}
public static String doConvert(String d) {
String dateRev = "";
String[] dateArr = d.split("-");
for(int i=dateArr.length-1 ; i>=0 ; i--) {
if(i!=dateArr.length-1)
dateRev += "-";
dateRev += dateArr[i];
}
return dateRev;
}
}
但是还有其他更优雅、更有效的方法吗? IE。使用一些内置功能?我在快速搜索 API 时找不到一个。
这里有人知道另一种方法吗?
最佳答案
使用java.util.DateFormat
:
DateFormat fromFormat = new SimpleDateFormat("yyyy-MM-dd");
fromFormat.setLenient(false);
DateFormat toFormat = new SimpleDateFormat("dd-MM-yyyy");
toFormat.setLenient(false);
String dateStr = "2011-07-09";
Date date = fromFormat.parse(dateStr);
System.out.println(toFormat.format(date));
关于java - 将日期字符串转换为不同的格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6637469/