簡體   English   中英

將java.sql.Date格式的String轉換為java.util.date格式的String

[英]Converting a String of java.sql.Date format to a String of java.util.date format

我試圖將sql日期字符串轉換為正常日期,但我得到此異常

java.text.ParseException:Unparseable date:“2013-03-11”,位於org.apache的com.ninenexus.simplesignworkflow.Task.getTaskDetails(Task.java:1385)的java.text.DateFormat.parse(未知來源)。位於org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)的jsp.task_jsp._jspService(task_jsp.java:259)位於org的javax.servlet.http.HttpServlet.service(HttpServlet.java:722)位於org.apache.jsper.servlet.JspServlet.service(JspServlet)的org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:391)中的.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:417) .java:334)位於org.apache.catalina.core上的org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:306)的javax.servlet.http.HttpServlet.service(HttpServlet.java:722)。 ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)位於org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)org.apache.catalina.core.StandardContextValve.invoke(Stan dardContextValve.java:161)org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)org.apache.catalina .core.StandardEngineValve.invoke(StandardEngineValve.java:118)org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:380)org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:243) )org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process(Http11Protocol.java:188)org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process(Http11Protocol.java:166)at org.apache.tomcat。 util.net.JIoEndpoint $ SocketProcessor.run(JIoEndpoint.java:288)java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)at java.util.concurrent.ThreadPoolExecutor $ Worker.run(Unknown Source)at java.lang .Thread.run(未知來源)

我想要這樣

"2013-03-11""11/03/2013"我如何修復它?

你在做什么是不合理的。

首先,java.sql.Date已經是java.util.Date。

其次,java.sql.Date不是SQL日期字符串。 java.sql.Date和java.util.Date都與日期的顯示格式無關。 即沒有包含“2013-03-11”的日期,而另一個日期包含“11/03/2013”​​。

DateFormat df = new SimpleDateFormat("dd/MM/yyyy");  
String text = df.format(date);  

System.out.println("The date is: " + text); 

獲取SimpleDateFormat類的幫助並parse日期字符串以獲取Util Date object

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

    public class DateConverter {

        public static void main(String[] args) throws ParseException {

            String dateString = "03/04/2013";
            Date utiDate;
            SimpleDateFormat dateFormater = new SimpleDateFormat("dd/MM/yyyy");
            utiDate = dateFormater.parse (dateString);
            System.out.println(utiDate);
        }
    }

以這種方式嘗試:

DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date date = df.parse("2013-03-11");   // convert string to date
df=new SimpleDateFormat("dd/MM/yyyy");
// date formatted in whatever format you want. 
System.out.println("The date is: " + df.format(date));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM