【问题标题】:oracle: how to convert string like '2000-01-01T01:01:01' to Date?oracle:如何将像“2000-01-01T01:01:01”这样的字符串转换为日期?
【发布时间】:2014-10-31 05:27:32
【问题描述】:

在pl/sql中,

select to_date('2012-01-01T12:01:01', 'yyyy-mm-dd"T"hh24:mi:ss') from dual;

有效。

但是在java中使用时,

String sql = "select to_date('2012-01-01T12:01:01', 'yyyy-mm-dd\"T\"hh24:mi:ss') from dual";

不工作。

请帮帮我。

错误:

com.google.gson.JsonSyntaxException: java.lang.NumberFormatException: For input string: "2014-10-31T13:16:38"
    at com.google.gson.internal.bind.TypeAdapters$8.read(TypeAdapters.java:263)
    at com.google.gson.internal.bind.TypeAdapters$8.read(TypeAdapters.java:253)
  ...

    at com.google.gson.Gson.fromJson(Gson.java:805)
    at com.google.gson.Gson.fromJson(Gson.java:770)
    at com.google.gson.Gson.fromJson(Gson.java:719)
    at dao.UserManagerNB.getData(UserManagerNB.java:64)
    at dao.UserManagerNB.editApplianceApplication(UserManagerNB.java:92)
    at com.svse.servlet.PutAppJsonServlet.doGet(PutAppJsonServlet.java:80)
  ...
    at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NumberFormatException: For input string: "2014-10-31T13:16:38"
    at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
    at java.lang.Double.parseDouble(Unknown Source)
    at com.google.gson.stream.JsonReader.nextLong(JsonReader.java:975)
    at com.google.gson.internal.bind.TypeAdapters$8.read(TypeAdapters.java:261)
    ... 30 more

怎么了?

【问题讨论】:

    标签: java oracle date


    【解决方案1】:

    Ron,你遇到了什么错误? 您必须使用双引号“”来括起 Java 中的字符串。

    所以你的代码应该是:

    String sql = "select to_date('2012-01-01T12:01:01', 'yyyy-mm-dd\"T\"hh24:mi:ss') from dual";
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-25
      相关资源
      最近更新 更多