先编写一个方法,它将格式为“yyyy/mm/dd”形式的日期字符串转化为日期对象。若日期字符串不符合以上规定,则抛出异常。再在main方法中对正常和异常输入的日期字符串分别进行验证,并输出转换后的日期对象
package 第七章;
import java.util.Date;
/*
File name:homework2.cpp
Author:yangliu
Date:2017/11/14
IDE:eclipse
describe:Java异常处理
*/
public class homework2 {
public static void main(String[] args) {
System.out.println("当前时刻为:");
System.out.println(new Date().toString());
System.out.println("转化显示格式后:");
System.out.println(convertCommonDateStr(new Date().toString()));
}
public static String convertCommonDateStr(String commonDateStr) {
StringBuffer result=new StringBuffer("");
String[] arrStr=commonDateStr.split(" ");
result.append(arrStr[5]).append("-");//年-
result.append(convertMonthStr(arrStr[1],true)).append("-");//月-
result.append(arrStr[2]).append(" ");//日
result.append(arrStr[3]);//时:分:秒
return result.toString();
}
public static String convertMonthStr(String monthStr,boolean isWithZero) {
String monthResult="";
if("Jan".equals(monthStr))
monthResult="01";
else if("Feb".equals(monthStr))
monthResult="02";
else if("Mar".equals(monthStr))
monthResult="03";
else if("Apr".equals(monthStr))
monthResult="04";
else if("May".equals(monthStr))
monthResult="05";
else if("Jun".equals(monthStr))
monthResult="06";
else if("Jul".equals(monthStr))
monthResult="07";
else if("Aug".equals(monthStr))
monthResult="08";
else if("Sep".equals(monthStr))
monthResult="09";
else if("Oct".equals(monthStr))
monthResult="10";
else if("Nov".equals(monthStr))
monthResult="11";
else if("Dec".equals(monthStr))
monthResult="12";
if(!isWithZero){
if(monthResult.startsWith("0"))
monthResult=monthResult.substring(1,2);
}
return monthResult;
}
}