날짜 문자열을 날짜로 구문 분석하는 방법
다음 날짜 문자열을 어떻게 해석하면Date오브젝트?
String target = "Thu Sep 28 20:29:30 JST 2000";
DateFormat df = new SimpleDateFormat("E MM dd kk:mm:ss z yyyy");
Date result = df.parse(target);
예외를 발생시킵니다...
java.text.ParseException: Unparseable date: "Thu Sep 28 20:29:30 JST 2000"
at java.text.DateFormat.parse(DateFormat.java:337)
패턴이 틀렸어요.3글자로 된 일 약어가 있기 때문에, 반드시 다음과 같이 입력해 주세요.EEE. 3글자의 월 약어가 있기 때문에, 반드시 다음과 같이 해야 합니다.MMM이러한 일 및 월의 약어는 로케일에 민감하기 때문에,SimpleDateFormatlocal을 영어로 변환하지 않으면 플랫폼 기본 로케일이 사용됩니다.기본 로케일은 영어 자체가 아닐 수 있습니다.
public static void main(String[] args) throws Exception {
String target = "Thu Sep 28 20:29:30 JST 2000";
DateFormat df = new SimpleDateFormat("EEE MMM dd kk:mm:ss z yyyy", Locale.ENGLISH);
Date result = df.parse(target);
System.out.println(result);
}
이 인쇄물은 여기에 있습니다.
2000년 9월 28일 (목)07:29:30 BOT
제 시간대대로라면 맞습니다.
만약 당신이 이 제품을 사용하고 싶지 않다면, 저도 다시 생각해보고 싶습니다.HH대신kk유효한 패턴에 대한 자세한 내용은 javadoc을 참조하십시오.
다음으로 작업 예를 제시하겠습니다.
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.text.DateFormat;
import java.util.Date;
public class j4496359 {
public static void main(String[] args) {
try {
String target = "Thu Sep 28 20:29:30 JST 2000";
DateFormat df = new SimpleDateFormat("EEE MMM dd kk:mm:ss zzz yyyy");
Date result = df.parse(target);
System.out.println(result);
} catch (ParseException pe) {
pe.printStackTrace();
}
}
}
인쇄:
Thu Sep 28 13:29:30 CEST 2000
String target = "27-09-1991 20:29:30";
DateFormat df = new SimpleDateFormat("dd MM yyyy HH:mm:ss");
Date result = df.parse(target);
System.out.println(result);
이거 잘 되나?
new SimpleDateFormat("EEE MMM dd kk:mm:ss ZZZ yyyy");
그리고.
new SimpleDateFormat("EEE MMM dd kk:mm:ss Z yyyy");
아직 동작하고 있습니다.단, 코드가 예외를 발생시키는 경우는 툴이나 jdk 또는 기타 이유가 원인입니다.IDE에서도 같은 에러가 발생했기 때문에, ZZZ와 Z를 포함한 http://ideone.com/Y2cRr을 확인해 주세요.
출력은 다음과 같습니다.Thu Sep 28 11:29:30 GMT 2000
난 이 문제가 있었고, 그리고 난 그 문제를Locale로.US그럼 되겠네요.
static DateFormat visitTimeFormat = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy",Locale.US);
위해서String "Sun Jul 08 00:06:30 UTC 2012"
해석 예외는 체크된 예외이므로 @miku가 제안한 바와 같이 Strings to Dates를 해석할 때 try-catch로 검출해야 합니다.
언급URL : https://stackoverflow.com/questions/4496359/how-to-parse-date-string-to-date
'programing' 카테고리의 다른 글
| 요구 사항 텐서 흐름을 충족하는 버전을 찾을 수 없습니다. (0) | 2022.10.31 |
|---|---|
| TypeError: python 및 CSV에서 'str'이 아닌 바이트와 유사한 개체가 필요합니다. (0) | 2022.10.31 |
| PHP의 'post_max_size'를 초과하는 파일을 정상적으로 처리하는 방법은 무엇입니까? (0) | 2022.10.31 |
| 명령줄에서 mysql을 통해 단일 쿼리를 실행하려면 어떻게 해야 합니까? (0) | 2022.10.31 |
| (서드파티 라이브러리를 사용하지 않고) Node.js로 파일을 다운로드하는 방법 (0) | 2022.10.31 |