将字符串日期转换为java.sql.Date

时间:2013-03-27 20:02:49

标签: java sql

是否可以转换string“20110210” 到java.sql.Date 2011-02-10?

我已尝试SimpleDateFormat,我得到java.text.ParseException: Unparseable date: "20110210"

我做错了什么?

我有  新的SimpleDateFormat(“yyyy-MM-dd”) 代替  新的SimpleDateFormat(“yyyyMMdd”)

2 个答案:

答案 0 :(得分:72)

这对我有用而不会抛出异常:

package com.sandbox;

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

public class Sandbox {

    public static void main(String[] args) throws ParseException {
        SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
        Date parsed = format.parse("20110210");
        java.sql.Date sql = new java.sql.Date(parsed.getTime());
    }


}

答案 1 :(得分:2)

也为我工作:

SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
    Date parsed = null;
    try {
        parsed = sdf.parse("02/01/2014");
    } catch (ParseException e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    }
    java.sql.Date data = new java.sql.Date(parsed.getTime());
    contato.setDataNascimento( data);

    // Contato DataNascimento era Calendar
    //contato.setDataNascimento(Calendar.getInstance());         

    // grave nessa conexão!!! 
    ContatoDao dao = new ContatoDao("mysql");           

    // método elegante 
    dao.adiciona(contato); 
    System.out.println("Banco: ["+dao.getNome()+"] Gravado! Data: "+contato.getDataNascimento());