尚代改进的将日期转化为中文日期的程序

开发者在线 Builder.com.cn 更新时间:2007-11-11作者:baocl 来源:赛迪网技术社区

本文关键词: 程序 中文 日期

/* 功能: 将输入的日期转换为中文日期(例如: 2007-10-05  -->  二○○七年十月五日)
 * 说明:此程序假定输入格式为yyyy-mm-dd, 且年月日部分都为数字, 没有加上非法
 *       输入的相关校验, 读者如有需要请自行加上.
 *       测试可以输入 2007-01-05
 *                    2007-1-05
 *                    2007-10-05
 */

public class DateConvertor 

    /**
     * 格式化日期
     * @param str 源字符串中的字符
     * @return
     */
    public static String formatStr(String str)
        sb.append('年');
        if(getMidLen(str,pos1,pos2) == 1)
                if(getLastLen(str, pos2) == 2)
                    else if(str.charAt(7) != '1' && str.charAt(8) == '0')
                    else if(str.charAt(7) == '1' && str.charAt(8) != '0')
                    else
                }
            }
            else
        }
        if(getMidLen(str,pos1,pos2) == 2)
                if(getLastLen(str, pos2) == 2)
                        else if(str.charAt(8) != '1' && str.charAt(9) == '0')
                        else if(str.charAt(8) == '1' && str.charAt(9) != '0')
                        else
                    }
                    else
                }
            }
            else if(str.charAt(5) != '0' && str.charAt(6) == '0')
                if(getLastLen(str, pos2) == 2)
                        else if(str.charAt(8) != '1' && str.charAt(9) == '0')
                        else if(str.charAt(8) == '1' && str.charAt(9) != '0')
                        else
                    }
                    else
                }
            }
            else
                if(getLastLen(str, pos2) == 2)
                        else if(str.charAt(8) != '1' && str.charAt(9) == '0')
                        else if(str.charAt(8) == '1' && str.charAt(9) != '0')
                        else
                    }
                    else
                }
            }
        }

        return sb.toString();
    }

    /**
     * 将源字符串中的阿拉伯数字格式化为汉字
     * @param sign 源字符串中的字符
     * @return
     */
    public static char formatDigit(char sign)

    /**
     * 获得月份字符串的长度
     * @param str  待转换的源字符串
     * @param pos1 第一个'-'的位置
     * @param pos2 第二个'-'的位置
     * @return
     */
    public static int getMidLen(String str,int pos1,int pos2)

    /**
     * 获得日期字符串的长度
     * @param str  待转换的源字符串
     * @param pos2 第二个'-'的位置
     * @return
     */
    public static int getLastLen(String str,int pos2)
}查看本文来源

用户评论

  • 用户名
  • 评论内容