1. 程式人生 > 實用技巧 >Java將日期轉化為大寫格式(阿拉伯大寫數字)

Java將日期轉化為大寫格式(阿拉伯大寫數字)

效果:

程式碼部分:

public static void main(String[] args) {
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
String beforedate=sdf.format(new Date());
System.out.println("轉換之前:"+beforedate);
String enddate=dataToUpper(beforedate);
System.out.println("轉換之後:"+enddate);
}
// 日期轉化為大小寫
public static String dataToUpper(String dateString) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
Date dateTime = null;
try {
dateTime = simpleDateFormat.parse(dateString);
} catch (ParseException e) {
e.printStackTrace();
}
Calendar ca = Calendar.getInstance();
ca.setTime(dateTime);
int year = ca.get(Calendar.YEAR);
int month = ca.get(Calendar.MONTH) + 1;
int day = ca.get(Calendar.DAY_OF_MONTH);
return numToUpper(year) + "年" + monthToUppder(month) + "月" + dayToUppder(day) + "日";
} // 將數字轉化為大寫(字型格式可自己定義)
public static String numToUpper(int num) {
//String u[] = {"零","壹","貳","叄","肆","伍","陸","柒","捌","玖"};
String u[] = {"零","一","二","三","四","五","六","七","八","九"};
char[] str = String.valueOf(num).toCharArray();
String rstr = "";
for (int i = 0; i < str.length; i++) {
rstr = rstr + u[Integer.parseInt(str[i] + "")];
}
return rstr;
} // 月轉化為大寫
public static String monthToUppder(int month) {
if(month < 10) {
return numToUpper(month);
} else if(month == 10){
return "十";
} else {
return "十" + numToUpper(month - 10);
}
} // 日轉化為大寫
public static String dayToUppder(int day) {
if(day < 20) {
return monthToUppder(day);
} else {
char[] str = String.valueOf(day).toCharArray();
if(str[1] == '0') {
return numToUpper(Integer.parseInt(str[0] + "")) + "十";
}else {
return numToUpper(Integer.parseInt(str[0] + "")) + "十" + numToUpper(Integer.parseInt(str[1] + ""));
}
}
}