programing

문자열을 날짜/시간으로 변환

powerit 2023. 5. 8. 22:29
반응형

문자열을 날짜/시간으로 변환

개발 중입니다.asp.net사이트 사용vb 프레임워크 3.5.

문자열 데이터를 cdate 함수를 사용하여 시도한 날짜로 변환하는 데 어려움이 있습니다.

문자열 변수인 sdate 변수가 있고 날짜가 텍스트 상자에서 dd/mm/yyyy로 저장되어 있습니다. 이제 하루 추가 또는 하루 빼기 작업을 수행해야 하므로 이 문자열을 날짜 변수로 변환하려고 합니다.

어떻게 해야 하는지 안내 부탁드립니다.3번째 줄에 오류가 있습니다.String was not recognized as a valid DateTime저는 다음과 같이 하려고 했지만 오류가 발생합니다.

Dim sdate As String 
Dim expenddt As Date
expenddt = Date.Parse(edate)
expenddt = expenddt.AddDays(-1)

하지만 다음과 같은 오류가 발생합니다.

문자열에서 날짜 유형으로 변환할 수 없습니다.

어떻게 해야 하나요?Date현에서?

사용해야 합니다.Date.ParseExact또는Date.TryParseExact올바른 형식 문자열을 사용합니다.

 Dim edate = "10/12/2009"
 Dim expenddt As Date = Date.ParseExact(edate, "dd/MM/yyyy", 
            System.Globalization.DateTimeFormatInfo.InvariantInfo)

OR

 Dim format() = {"dd/MM/yyyy", "d/M/yyyy", "dd-MM-yyyy"}
 Dim expenddt As Date = Date.ParseExact(edate, format,  
     System.Globalization.DateTimeFormatInfo.InvariantInfo, 
     Globalization.DateTimeStyles.None)

OR

Dim format() = {"dd/MM/yyyy", "d/M/yyyy", "dd-MM-yyyy"}
Dim expenddt As Date
Date.TryParseExact(edate, format, 
    System.Globalization.DateTimeFormatInfo.InvariantInfo, 
    Globalization.DateTimeStyles.None, expenddt)

아무도 이것에 대해 언급하지 않았지만, 어떤 경우에는 다른 방법이 날짜를 인식하지 못합니다.

대신 날짜 및 시간의 지정된 문자열 표현을 동등한 날짜 및 시간 값으로 변환할 수 있습니다.

string iDate = "05/05/2005";
DateTime oDate = Convert.ToDateTime(iDate);
MessageBox.Show(oDate.Day + " " + oDate.Month + "  " + oDate.Year );

다음 코드가 도움이 되는지 확인합니다.

Dim iDate As String = "05/05/2005"
Dim oDate As DateTime = Convert.ToDateTime(iDate)

다음과 같이 날짜를 변환해 보십시오.

    Dim expenddt as Date = Date.ParseExact(edate, "dd/mm/yyyy", 
System.Globalization.DateTimeFormatInfo.InvariantInfo);

이게 도움이 되길 바랍니다.

DateTime을 사용해 보십시오.날짜 시간 마스크와 원래 구문 분석된 문자열을 모두 지정할 수 있는 ParseExact 메서드입니다.MSDN: DateTime은 여기에서 읽을 수 있습니다.정확한 구문 분석

언급URL : https://stackoverflow.com/questions/8634568/convert-a-string-to-a-datetime

반응형