如何将英文日期转换为中文和韩文

时间:2015-08-09 06:54:40

标签: date groovy

我试图为日期实现区域设置。但除了中文和韩文外,它的工作正常。对于中文和韩文,'''是来月的。

语言:Groovy,grails 1.3.7

请参阅以下代码

    Date from=new Date(params.from)
    Date to=new Date(params.to)+1

    //params.from and params.to is in english


    dateMap.from=from
    dateMap.to=to




   SimpleDateFormat sdf =  new SimpleDateFormat("dd-MMM-yyyy",locale)
   String fromDate
   String toDate
   fromDate=sdf.format(from)
   toDate=sdf.format(to)


   println "fromdate :"+fromDate

输出是 fromdate:09 - ?? - 2015

这适用于所有其他语言。

请在下面再看一遍我试过的代码。

     locale=new Locale("zh","CN")

    SimpleDateFormat dateFormatCN = new SimpleDateFormat("dd-MMM-yyyy",          locale);
    SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MMM-yyyy");
    Date temp = dateFormat.parse("05-Sep-2013");

    println "temp :"+temp
    String out=dateFormatCN.format(temp);
    println "out :"+out

输出: temp:Thu Sep 05 00:00:00 IST 2013 出:05 - ?? - 2013

1 个答案:

答案 0 :(得分:0)

这是您的控制台的问题。

我在groovyConsole中尝试了以下内容并且它有效

import java.text.SimpleDateFormat

def params = [to: '05-Sep-2013', from: '05-Sep-2013']

def locale=new Locale("zh","CN")
Date from=new Date(params.from) 
Date to=new Date(params.to)+1      //params.from and params.to is in english     

SimpleDateFormat sdf =  new SimpleDateFormat("dd-MMM-yyyy",locale) 
String fromDate  
String toDate    
fromDate=sdf.format(from)   
toDate=sdf.format(to)     
println "fromdate :"+fromDate​