Java转纯中文日期,我看还没人问过?求教

由于现在有生成证书的需求 需要将日期转成纯中文. 例:2016-03-12 转 二零一六年三月十二日 我在网上搜到两篇代码 都不行... 所以我希望有亲测可用的代码在此拜托各位大神了.

刚刚写的,希望采纳

package test;

public class ChangeDate {
static char[] chinese = "零一二三四五六七八九十".toCharArray();

public static String getChineseDate(String date) {
    //支持yyyy-MM-dd和yyyyMMdd格式
    if(date == null) return null;
    date = date.replace("-", "");
    if(date.length() != 8) return null;
    //这里数字就不检查了,可以自己写个格式检查
    StringBuilder sb = new StringBuilder();
    for (int i=0;i<4;i++) {//年
        sb.append(chinese[Integer.parseInt(date.substring(i, i+1))]);
    }
    sb.append("年");
    int month = Integer.parseInt(date.substring(4, 6));
    if(month <= 10) {
        sb.append(chinese[month]).append("月");
    } else {
        sb.append("十").append(chinese[month%10]).append("月");
    }
    int day = Integer.parseInt(date.substring(6));
    if (day <= 10) {
        sb.append(chinese[day]).append("日");
    } else if(day < 20) {
        sb.append("十").append(chinese[day % 10]).append("日");
    } else {
        sb.append(chinese[day / 10]).append("十");
        int tmp = day % 10;
        if (tmp != 0) sb.append(chinese[tmp]);
        sb.append("日");
    }
    return sb.toString();
}

public static void main(String[] args) {
    System.out.println(getChineseDate("2016-11-09"));
}

}