java Date를 영문 String으로 설치한 후 Date 솔루션으로 다시 돌아갈 수 없음

2554 단어 javastringdate
이것은 동료가 만난 문제다.
코드의 날짜는 페이지에 "Fri Mar 21 09:20:38 CST 2014"형식으로 표시됩니다. 다음 controller에만 전달됩니다.
양식을 다시 제출할 때 Dto 클래스의 private Date startTime;설정된 값이 없습니다.
로컬 프로그램으로 실험을 해봤어요.

public static void main(String[] args) { 
  Date now = new Date(); 
  System.out.println(now); 
  String nowStr = now.toString(); 
  DateFormat format = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy"); 
  Date parsedNow = null; 
  try { 
    parsedNow = format.parse(nowStr); 
    System.out.println(parsedNow); 
  } catch (ParseException e) { 
    e.printStackTrace(); 
  } 
} 
프로그램 실행 포맷.parse(nowStr) 타임즈 오류
Java.text.ParseException: Unparseable date: "Fri Mar 21 09:25:48 CST 2014"
at java.text.DateFormat.parse(DateFormat.java:337)
원본 코드를 분석하고 확인한 결과 시스템이 사용하는 언어로 인한 오류가 발생했다는 결론을 얻었다.

DateFormat format = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy"); 
기본값은

DateFormat format = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy", new Locale(System.getProperty("user.language"))); 
그중에서도 시스템.getProperty ("user.language") 는 시스템이 중국어이기 때문에 zh입니다. 중국어 시간대에서 이 포맷을 지원하지 않을 것입니다.
위의 코드를 수정하여 이 관점을 검증하다

public static void main(String[] args) { 
  Date now = new Date(); 
  System.out.println(now); 
  String nowStr = now.toString(); 
  DateFormat format = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy", new Locale(System.getProperty("user.language"))); 
  System.out.println(System.getProperty("user.language")); 
  Date parsedNow = null; 
  try { 
    parsedNow = format.parse(nowStr); 
    System.out.println(parsedNow); 
  } catch (ParseException e) { 
    format = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy", Locale.ENGLISH); 
    try { 
      System.out.println("new format by 'en'"); 
      System.out.println(format.parse(nowStr)); 
    } catch (ParseException e1) { 
      e1.printStackTrace(); 
    } 
  } 
} 
또 다른 해결 방안은 jsp 페이지에서 날짜 형식을 한 번 바꾸는 것이다. 예를 들어

<input type="hidden" name="data" value=' 
          <fmt:formatDate value="${dto.date}" pattern="yyyy-MM-dd"/> 
          '/> 
이상은 본문의 전체 내용입니다. 본고의 내용이 여러분의 학습이나 업무에 일정한 도움을 줄 수 있는 동시에 저희를 많이 지지해 주시기 바랍니다!

좋은 웹페이지 즐겨찾기