IT

dd / mm / yyyy 형식의 페이지를 Datetime으로 변환

lottoking 2020. 8. 31. 08:07
반응형

dd / mm / yyyy 형식의 페이지를 Datetime으로 변환 [중복]


이 질문에 이미 답변이 있습니다.

DotNet 및 C #을 처음 사용합니다. mm/dd/yyyy형식 의 문자열 DateTime개체 로 CHAPTER 2하고 싶습니다 . 라이선스 같이 구문 분석 기능을 시도했지만 실행 오류가 발생합니다.

DateTime dt=DateTime.Parse("24/01/2013");

datetime으로 변환하는 방법에 대한 아이디어가 있습니까?


DateTime.ParseExact과 함께 형식 사용해야 합니다."dd/MM/yyyy"

DateTime dt=DateTime.ParseExact("24/01/2013", "dd/MM/yyyy", CultureInfo.InvariantCulture);

d/M/yyyy형식에 사용하면 한 자리 숫자와 두 자리 숫자를 모두 처리하는 더 안전합니다 . 그러나 그것은 당신이 한 자리 / 두 자리 값을 기대하고 있는지에 달려 있습니다.


귀하의 날짜 형식은 day/Month/Year어떤 문화에 대한 수용 가능한 날짜 형식입니다. 예를 들어 캐나다 문화의 경우 다음 en-CA DateTime.Parse과 같이 작동합니다.

DateTime dt = DateTime.Parse("24/01/2013", new CultureInfo("en-CA"));

또는

System.Threading.Thread.CurrentThread.CurrentCulture = new CultureInfo("en-CA");
DateTime dt = DateTime.Parse("24/01/2013"); //uses the current Thread's culture

위의 두 줄은 모두 가기 형식이 en-CA문화권에 적합하기 때문에 . DateTime.Parse호출에 문화를 제공하지 않기 때문에 현재 문화가 날짜 형식을 지원하지 않는 구문 분석에 사용됩니다. 자세한 내용은 DateTime.Parse에서 확인 하세요.


구문 분석을위한 또 다른 방법은 DateTime.TryParseExact

DateTime dt;
if (DateTime.TryParseExact("24/01/2013", 
                            "d/M/yyyy", 
                            CultureInfo.InvariantCulture, 
                            DateTimeStyles.None,
    out dt))
{
    //valid date
}
else
{
    //invalid date
}

TryParse.NET Framework는 대신 그들이 반환하는 잘못된 값에 예외를 던지지 않습니다 bool.

공지 사항 I 단일 사용하는 노래 d하고 M하루 달. 단일 d및 한 M자리 / 두 자리 일과 월 모두에서 작동합니다. 따라서 형식의 d/M/yyyy유효한 값은 다음과 가변적입니다.

  • "2013 년 1 월 24 일"
  • '2013 년 1 월 24 일'
  • "2013 년 4 월 12 일"/ 2013 년 12 월 4 일
  • '2013 년 4 월 12 일'

자세한 내용은 다음을 참조하십시오. 사용자 정의 날짜 및 시간 형식


사용하다 DateTime.ParseExact

string strDate = "24/01/2013";
DateTime date = DateTime.ParseExact(strDate, "dd/MM/YYYY", null)

null다소 위험한 현재 문화를 사용할 것입니다. 특정 문화를 제공하려고

DateTime date = DateTime.ParseExact(strDate, "dd/MM/YYYY", CultureInfo.InvariantCulture)

"dd/MM/yyyy"에서 사용하기 위해 형식을 사용할 수 있습니다 .DateTime.ParseExact

지정된 형식 및 문화권 별 형식 정보를 사용하여 날짜 및 시간의 표현을 사용하여 DateTime으로 변환합니다. 동화 표현의 형식은 지정된 형식과 정확히 일치해야합니다.

DateTime date = DateTime.ParseExact("24/01/2013", "dd/MM/yyyy", CultureInfo.InvariantCulture);

다음은 .DEMO

자세한 내용은 Custom Date and Time Format Strings

참고 URL : https://stackoverflow.com/questions/15738608/converting-dd-mm-yyyy-formatted-string-to-datetime

반응형