복붙노트

[SPRING] 아랍어로 자바 날짜 시간

SPRING

아랍어로 자바 날짜 시간

봄 언어로 선택한 언어가 영어 인 경우 사용자가 아랍어로 날짜를 선택하는 방법은 아랍어이며 날짜는 영어 형식입니까? 요청에 따라 기본 로케일을 영어 및 아랍어로 설정하여 시도했지만 아랍어로 (9 시간 15 분) 캘린더 API 시간을 얻는 데 도움이되지 않습니다.

해결법

  1. ==============================

    1.Joda 시간 또는 Java 8 Date time API를 사용하십시오. 다음은 Java 8 API의 예입니다.

    Joda 시간 또는 Java 8 Date time API를 사용하십시오. 다음은 Java 8 API의 예입니다.

        if(language.equals("English")){
          LocalDateTime now = LocalDateTime.now();
        }
        else{        
          HijrahDate hijrahDate=HijrahDate.now();
        }
    
  2. ==============================

    2.귀하의 질문은 혼란스럽고 귀하의 의견은 명확히하는 데 도움이되지 않습니다.

    귀하의 질문은 혼란스럽고 귀하의 의견은 명확히하는 데 도움이되지 않습니다.

    이슬람 달력이 필요 했나요? 그렇다면 Masud의 답이 맞습니다.

    리야드와 같은 아랍 위치로 날짜와 시간대를 조정하고 싶습니까?

    월 및 요일과 같은 날짜 - 시간의 텍스트 표현에 사용 된 단어를 지역화하고 싶습니까?

    일, 월, 년의 표현 순서와 같이 날짜 - 시간의 텍스트 표현 형식을 현지화하고 싶습니까?

    Joda-Time 2.3 라이브러리를 사용하여 약간의 예제 코드를 작성하여 도움이되기를 바랍니다.

    java.util.Locale을 만들려면 다음이 필요합니다.

    DateTime dateTimeUtc = new DateTime( DateTimeZone.UTC );
    
    DateTimeZone timeZone = DateTimeZone.forID( "Asia/Riyadh" );
    DateTime dateTimeRiyadh = dateTimeUtc.withZone( timeZone );
    
    java.util.Locale locale = new Locale( "ar", "SA" ); // ( language code, country code );
    DateTimeFormatter formatter = DateTimeFormat.forStyle( "FF" ).withLocale( locale ).withZone( timeZone );
    String output = formatter.print( dateTimeUtc );
    

    콘솔 덤프 ...

    System.out.println( "dateTimeUtc: " + dateTimeUtc );
    System.out.println( "dateTimeRiyadh: " + dateTimeRiyadh );
    System.out.println( "output: " + output );
    

    실행할 때 ...

    dateTimeUtc: 2014-02-16T09:52:33.901Z
    dateTimeRiyadh: 2014-02-16T12:52:33.901+03:00
    output: 16 فبراير, 2014 AST 12:52:33 م
    
  3. from https://stackoverflow.com/questions/19923498/java-date-time-in-arabic by cc-by-sa and MIT license