将 Java的cron表达式转化中文意思,仅支持数字 - ,、* 等特殊符号,其他的不支持,
private static final String QUESTION = "?";
private static final String ASTERISK = "*";
private static final String COMMA = ",";
private static final String SLASH = "/";
private static final String RUNG = "-";
/**解析cron表达式,作用到分位置
* 中文显示,只运行
* */
public static String translateToChinese(String cronExp) {
StringBuffer stringBuffer = new StringBuffer("");
try {
new CronExpression(cronExp);
//解析表达式 [秒 分 时 日 月 周]
String[] split = cronExp.split(" ");
if (split.length == 6) {
//解析月
if (!split[4].equals(ASTERISK)) {
if (split[4].contains("/")) {
stringBuffer.append("从").append(split[4].split("/")[0]).append("号开始").append(",每").append
(split[4].split("/")[1]).append("月");
} else {
stringBuffer.append("每年").append(split[4]).append("月");
}
}
//解析周
if (!split[5].equals(ASTERISK) && !split[5].equals(QUESTION)) {
if (split[5].contains(COMMA)) {
stringBuffer.append("每周");
char[] tmpArray = split[5].toCharArray();
for (char tmp : tmpArray) {
switch (tmp) {
case '1':
stringBuffer.append("日");
break;
case '2':
stringBuffer.append("一");
break;
case '3':
stringBuffer.append("二");
break;
case '4':
stringBuffer.append("三");
break;
case '5':
stringBuffer.append("四");
break;
case '6':
stringBuffer.append("五");