如何将Date(2019/5/10)转换为shamsiDate(1398/4/12)

时间:2019-06-02 09:27:48

标签: web-services date jpa swagger spring-framework-beans

我已经在包含Deadline Date的代码中调用了一个Web服务。问题是大张旗鼓的反应是这样的:

{
    "id": "289",
    "serviceName": "خدمت 1",
    "deadLine": "2024/05/06",
   ...
...
  }

我想在Shamsi Date中显示截止日期,例如1398/4/12。 我使用了很多转换器,但对我没有用,仍然显示"deadLine": "2024/05/06",

这是我的观点:

public String setDeadLine(Date deadLine) {
        this.deadLine = deadLine;
         String dateFa;
       //String  dateFa= DateConvertor.miladi2date(deadLine);

       dateFa=  this.ConvertToPersianToShow(deadLine);
       return dateFa;
    }


    public String ConvertToPersianToShow(Date  deadLine)
    {
        CalendarTool cl = new CalendarTool();
        String date;
        String year = cl.getIranianYearInCentury();
        String Month = cl.getIranianMonthStr();
        String day = cl.getIranianWeekDayStr();

        date = year+"/" + Month + "/" + day;
        return date;
    }

我应该在控制器中键入任何代码吗?

1 个答案:

答案 0 :(得分:0)

解决: 我只需要在ConvertToPersianToShow中添加一些代码: calendarTool应该被填充.mine为空 我添加了以下代码:

 String[] date = deadLine.split("/");
        if(date.length != 3)
            return null;
        Calendar calendar = GregorianCalendar.getInstance();
        calendar.set(Integer.parseInt(date[0]),Integer.parseInt(date[1]),Integer.parseInt(date[2]));

并填写日历:

 CalendarTool cl = new CalendarTool(calendar);