2012-04-18 3 views
2

나는변환 오라클 타임 스탬프 데이터 형식 문자열

문자열 strDate = ": 30 : 24.12.12 03 00000"자바 문자열에서 오라클의 타임 스탬프 필드가; // 오라클

의 타임 스탬프 필드는 내가 Java.util.Date로 변환해야합니다.

나에게이 작업을 수행 할 수있는 방법을 알려주세요.

참고 : 나는이 연도가 1912 년이나 2012 년이라고 어떻게 이해할 수 있습니까?

+0

java.sql.ResultSet에서이 문자열을 가져오고 있습니까? 그렇다면 ResultSet.getString() 대신 ResultSet.getTimestamp()를 호출하는 것이 좋습니다. –

+0

옳은 답이 이미 게시되어 있지만, 오라클 자체에서 to_timestamp()를 통해 선택하고 JDBC에서 변환 할 수는 있지만 SimpleDateFormat은 정확합니다. – Xailor

답변

2

당신이 원하는 클래스는 SimpleDateFormat입니다. 예상되는 입력과 일치하는 패턴을 만들고 구문 분석합니다. 여기에 예제가 어떤 장소에서 올바르지 않을 수 있지만,의

String strDate = "24.12.12 03:30:00,000"; 
SimpleDateFormat sdf = new SimpleDateFormat("dd.MM.yy HH:mm:ss,SSS"); 
Date date = sdf.parse(strDate); 

당신의 1912 대 2012 문제를 Rgarding, 자바는 때 몇 가지 가정을 만들 것입니다 (어쩌면 당신이 등, 1-24을 원하는 0-23 시간 사용) 단 두 자리 만 있습니다. 구체적으로, "약식 연도 패턴 ("y "또는"yy ")을 사용하여 구문 분석을 수행하려면 SimpleDateFormat이 세기를 기준으로 약식 연도를 해석해야하며 시간이 경과하기 80 년 전과 20 년 후에 날짜가 조정됩니다. SimpleDateFormat 인스턴스가 생성되었습니다. "

관련 문제