문제

날짜 개체를 읽을 수있는 문자열 (예 : 22/10/2009 21:13:14)에 저장하고 싶습니다.

나는 많은 것을 시도했고 내가 찾을 수있는 최선의 방법은 구문 분석 및 형성에 DateFormater를 사용하는 것이었지만 좌절이 있습니다. 날짜를 포맷하면 몇 초만 정보를 잃습니다. 나는 그것을 포맷하고 초를 표시하는 옵션이 있는지 찾으려고 노력했지만 (해상도가 당신이 허용하는 날짜가 있기 때문에 밀리 초 레벨에 더 나은 것도 더 나은 것도 더 나은 것입니다).

어떤 아이디어?

도움이 되었습니까?

해결책

보세요 java.text.simpledateformat

SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss.SSS");
Date dt = new Date();
String S = sdf.format(dt); // formats to 09/23/2009 13:53:28.238
Date dt2 = sdf.parse(S); // parses back

다른 팁

SimpleDateFormat 두 번째 및 밀리 초를 포함하는 매우 간단한 패턴 시스템을 기반으로 날짜를 형식화하고 구문 분석 할 수 있습니다.

다른 답변은 모두 좋습니다.

그러나 이런 종류의 일을 할 때 제발 형식을 선택하십시오 제대로 정렬합니다 문자열로 코딩 할 때 .... "yyyy/mm/dd hh : mm : ss"는 괜찮습니다. 소프트웨어 엔지니어가 명백하고 편리한 방식으로 정렬하지 않는 날짜 형식을 선택하면 항상 저를 놀라게합니다.

당신은 동료 개발자를 미래의 먼 지점에서 많은 고통을 저장할 것입니다 - 그것을 좋은 업장으로 생각하십시오 :-)

약간의 주제이지만, 나는 항상 사람들에게 dateformat 및 simpledateformat이 스레드 안전하지 않다는 것을 사람들에게 상기시켜야 할 필요성을 느낍니다! 태양 문서는 이것을 분명히 말하지만, 사람들이 정적으로 단순한 형태를 붙이는 야생에서 코드를 계속 찾고 있습니다 ...

ISO 8601

사용 ISO 8601 체재.

  • 유연성이 뛰어나고 초의 초와 분수가 포함되어 있지만 0이면 남겨 두는 것도 포함됩니다.
  • 표준이므로 점점 더 많은 도구 형식을 구문 분석하고 구문 분석합니다. 스토리지 또는 데이터 교환의 직렬화에 적합합니다.
  • 그것은 비슷합니다 2009-10-22T21:13:14, 나는 그것이 인간이 읽을 수 있다고 말해야한다 (그러나 T 시간 부분의 시작을 나타내는 중간에는 처음에는 비정상적인 느낌이들 수 있습니다).
  • Mikera가 요청한 것처럼 문자열은 제대로 정렬됩니다 또 다른 대답, 연도가 1000-9999의 4 자리 범위에있는 한.
  • 클래스 java.time, Modern Java 날짜 및 시간 API뿐만 아니라 Joda Time의 기본값, 즉 명시 적 형성이없는 기본값으로 ISO 8601을 구문 분석하고 동일한 형식을 생산합니다. toString 행동 양식.

사용의 겸손한 데모 java.time:

LocalDateTime dateTime = LocalDateTime.of(2009, 10, 22, 21, 13, 14);
String readableString = dateTime.toString();
System.out.println(readableString);
LocalDateTime parsedBack = LocalDateTime.parse(readableString);
System.out.println(parsedBack);

이것은 두 가지 동일한 줄을 인쇄합니다.

2009-10-22T21:13:14
2009-10-22T21:13:14

후자의 System.out.println() 호출은 암시 적으로 전화를받습니다 toString() 다시 한 번, 이것은 놀라지 않을 것입니다.

조금 더 간단하게하고 싶고 대부분의 다른 답변이 포함되는 자신의 DateFormat를 만들지 않으면 기본 형식을 활용할 수 있습니다. java.time.instant:

(new Date()).toInstant.toString();
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top