29

string「20110210」をjava.sql.Date2011-02-10に変換することはできますか?

私は試してみましたがSimpleDateFormat、私は得るjava.text.ParseException: Unparseable date: "20110210"

私は何を間違っていますか?

new SimpleDateFormat("yyyyMMdd") の代わりに new SimpleDateFormat("yyyy-MM-dd") がありました

4

2 に答える 2

76

これは、例外をスローせずに機能します。

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


}
于 2013-03-27T20:05:10.950 に答える
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());
于 2014-07-14T22:42:08.493 に答える