programing

현재 날짜를 Java 문자열로 변환하려면 어떻게 해야 합니까?

sourcejob 2022. 11. 4. 23:28
반응형

현재 날짜를 Java 문자열로 변환하려면 어떻게 해야 합니까?

Java에서 현재 날짜를 문자열로 변환하려면 어떻게 해야 합니까?

String date = new SimpleDateFormat("dd-MM-yyyy").format(new Date());
// GET DATE & TIME IN ANY FORMAT
import java.util.Calendar;
import java.text.SimpleDateFormat;
public static final String DATE_FORMAT_NOW = "yyyy-MM-dd HH:mm:ss";

public static String now() {
Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat(DATE_FORMAT_NOW);
return sdf.format(cal.getTime());
}

여기서부터 가져가다

// On the form: dow mon dd hh:mm:ss zzz yyyy
new Date().toString();

실장 사용(예: ).

DateFormat df = new SimpleDateFormat("dd/MM/yyyy");
String data = df.format(new Date());

dr;dr

LocalDate.now()
         .toString() 

2017-01-23

원하는/예상 시간대를 명시적으로 지정하는 것이 좋습니다.

LocalDate.now( ZoneId.of( "America/Montreal" ) )
         .toString() 

java.time

Java 8 이후의 최신 방법은 java.time 프레임워크입니다.

날짜는 언제든지 전 세계에 따라 다르므로 표준 시간대를 지정합니다.

ZoneId zoneId = ZoneId.of( "America/Montreal" ) ;  // Or ZoneOffset.UTC or ZoneId.systemDefault()
LocalDate today = LocalDate.now( zoneId ) ;
String output = today.toString() ;

2017-01-23

기본적으로 표준 ISO 8601 형식의 문자열이 표시됩니다.

에서는, 「」를 합니다.java.time.format.DateTimeFormatter를 누릅니다


java.time 정보

java.time 프레임워크는 Java 8 이후에 포함되어 있습니다.이러한 클래스는 , 및 등 문제가 많은 오래된 레거시 날짜 시간 클래스를 대체합니다.

현재 유지보수 모드에 있는 조다 타임 프로젝트는 java.time 클래스로의 이행을 권장합니다.

자세한 내용은 Oracle 자습서를 참조하십시오.또한 Stack Overflow를 검색하여 많은 예와 설명을 확인하십시오.사양은 JSR 310입니다.

java.time 객체를 데이터베이스와 직접 교환할 수 있습니다.JDBC 4.2 이후준거한JDBC 드라이버를 사용합니다.스트링도 필요 없고java.sql.*②.

java.time 클래스는 어디서 얻을 수 있습니까?

  • Java SE 8, Java SE 9, Java SE 10 이후
    • 붙박이.
    • 번들 구현이 포함된 표준 Java API의 일부입니다.
    • Java 9에는 몇 가지 사소한 기능과 수정 사항이 추가되어 있습니다.
  • Java SE 6 및 Java SE 7
    • java.time 기능의 대부분은 ThreeTen 백포트의 Java 6 및7로 백포트됩니다.
  • 안드로이드
    • 최신 버전의 Android 번들 구현 java.time 클래스.
    • 이전의 Android(<26)에서는 쓰리텐ABP 프로젝트가 ThreeTen-Backport(상기)를 채택하고 있습니다.'쓰리텐ABP 사용방법'을 참조하십시오.

쓰리텐 엑스트라 프로젝트는 java.time을 추가 클래스로 확장합니다.이 프로젝트는 향후 java.time에 추가될 수 있는 가능성을 입증하는 기반입니다.여기에는 , , , 유용한 클래스가 있습니다.

고속화:

String date = FastDateFormat.getInstance("dd-MM-yyyy").format(System.currentTimeMillis( ));

시간: YYY-MM-dd

String time = new DateTime( yourData ).toString("yyyy-MM-dd");

Date Time 라이브러리는 다음과 같습니다.

org.joda.time을 Import합니다.날짜 시간;

대부분의 답변은 유효했다.Date 처리를 위한 새로운 JAVA API 수정으로 Java Date 처리의 초기 모호성이 감소되었습니다.

유사한 콜에 대해 권장되지 않는 메시지가 나타납니다.

new Date() // deprecated

위의 콜에서는 개발자는 새로운 Date 객체가 현재 타임스탬프를 가진 Date 객체를 제공할 것으로 가정했습니다.이 동작은 다른 Java API 클래스에서 일관되지 않습니다.

새로운 방법은 일정관리 인스턴스를 사용하는 것입니다.

new SimpleDateFormat("yyyy-MM-dd").format(Calendar.getInstance().getTime()

여기도 명명 규칙은 완벽하지 않지만 이것은 매우 체계적이다.나처럼 일을 망치는 것은 어렵지만 논리적으로 들리면 잊지 않는 사람에게 이것은 좋은 접근법이다.

이것은 실생활과 더 동의어이다.

  1. 캘린더 오브젝트를 입수해, 그 안에서 시간을 찾습니다.(Calendar로부터 시간을 얻을 수 없는 것이 궁금할 것입니다.그래서 저는 그것이 완벽하지 않다고 말했습니다.하지만 그건 전혀 다른 주제입니다.)
  2. 그런 다음 간단한 텍스트 형식으로 날짜를 지정하기 위해 1단계부터 날짜 형식을 지정하는 데 도움이 되는 SimpleDateFormat 유틸리티 클래스를 사용합니다.포맷의 파라미터로서 yyy, MM, dd를 사용하고 있습니다.지원되는 날짜 형식 매개 변수

또 하나의 방법은 Joda time API를 사용하는 것입니다.

new DateTime().toString("yyyy-MM-dd")

또는 매우 명백한

new DateTime(Calendar.getInstance().getTime()).toString("yyyy-MM-dd")

둘 다 같은 결과를 반환합니다.

public static Date getDateByString(String dateTime) {
        if(dateTime==null || dateTime.isEmpty()) {
            return null;
        }
        else{
            String modified = dateTime + ".000+0000";
            DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ");
            Date dateObj = new Date();
            Date dateObj1 = new Date();
            try {
                if (dateTime != null) {
                    dateObj = formatter.parse(modified);
                }

            } catch (ParseException e) {
                e.printStackTrace();
            }

            return dateObj;
        }

    }

언급URL : https://stackoverflow.com/questions/2942857/how-to-convert-current-date-into-string-in-java

반응형