Подтвердить что ты не робот

Преобразовать строку date в java.sql.Date

Можно ли преобразовать string "20110210" до java.sql.Date 2011-02-10?

Я пробовал SimpleDateFormat, и я получаю java.text.ParseException: Unparseable date: "20110210"

Что я делаю неправильно?

у меня  новый SimpleDateFormat ( "yyyy-MM-dd" ) вместо  новый SimpleDateFormat ( "yyyyMMdd" )

4b9b3361

Ответ 1

Это работает для меня, не вызывая исключения:

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());
    }


}

Ответ 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());