Android에서 SimpleDateFormat을 사용하여 날짜 문자열을 구문 분석할 때 다음 오류가 발생합니다. 발생:
java.text.ParseException: Unparseable date: "24 Oct 2016 7:31 pm" (at offset 3)
오류를 해결하려면 SimpleDateFormat을 사용할 때 로케일을 명시적으로 지정하는 것이 중요합니다. 이렇게 하면 날짜 형식이 로케일 규칙에 따라 올바르게 해석됩니다.
또한 향상된 기능을 제공하고 오래된 버전으로 인한 잠재적인 문제를 제거하는 최신 Java 8 날짜 및 시간 API로 전환하는 것이 좋습니다. SimpleDateFormat과 같은 API.
사용자 정의 날짜 형식의 경우 SimpleDateFormat 대신 DateTimeFormatter를 사용해야 합니다. 대소문자를 구분하지 않는 구문 분석을 제공하고 여러 로케일을 지원하며 전체적으로 더 유연합니다.
import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; public class Main { public static void main(String[] args) { String strDateTime = "24 Oct 2016 7:31 pm"; DateTimeFormatter dtf = DateTimeFormatter.ofPattern("d MMM uuuu h:m a", Locale.ENGLISH); LocalDateTime ldt = LocalDateTime.parse(strDateTime, dtf); System.out.println(ldt); } }
기본 로케일은 구문 분석 시 문제가 될 수 있습니다. 날짜는 시스템의 로케일 설정에 따라 다르기 때문입니다. 이러한 문제를 방지하려면 항상 원하는 로케일을 명시적으로 지정하십시오.
위 내용은 Android에서 날짜를 구문 분석할 때 java.text.ParseException을 수정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!