C#에서는 DateTime 구조체에서 제공하는 일부 구문 분석 메서드를 사용하여 날짜 및 시간의 문자열 표현을 동등한 DateTime 개체로 변환할 수 있습니다. 이러한 방법을 사용하려면 변환할 날짜의 문자열 표현이 필요하며, 이와 함께 문화별 형식 정보도 지정할 수 있습니다.
방법은 아래와 같습니다.
각 구문 분석 방법에 대한 구문은 다음과 같습니다.
public static DateTimeParse(string str);
여기서 Parse() 메서드는 변환할 날짜와 시간을 나타내는 문자열 인수를 사용합니다. str.
으로 표시되는 날짜 및 시간에 해당하는 DateTime 개체를 반환합니다.public static DateTimeParseExact(string str, string strFormat, IFormatProviderformatProvider);
여기서 세 개의 인수가 메서드에 전달됩니다. 여기서 str은 변환할 날짜 및 시간의 문자열 표현이고, format은 필요한 str 형식을 지정하며, formatProvider는 str에 대한 문화별 형식 정보를 제공합니다. str로 표시되는 날짜 및 시간에 해당하는 DateTime 개체를 반환합니다.
public static bool TryParse(string str, out DateTimeresult);
여기서 str은 변환할 날짜와 시간을 나타내며, 결과 값은 result 변수에 저장됩니다. 이 메서드는 변환이 성공하면 true를 반환합니다. 그렇지 않으면 false를 반환합니다.
public static bool TryParseExact(string str, string[] strFormats, IFormatProviderformatProvider, DateTimeStylesstyle, out DateTimeresult);
이 메서드는 변환이 성공하면 true를 반환합니다. 그렇지 않으면 false를 반환합니다.
C#에서는 문자열을 날짜로 변환하는 데 여러 가지 방법을 사용할 수 있습니다. 변환할 문자열은 날짜 및 시간을 올바르게 표현해야 하며 null이거나 비어 있어서는 안 됩니다. 변환이 성공하면 이 메소드는 DateTime 객체를 반환합니다.
현재까지 문자열을 파싱하는데 사용된 방법은 다음과 같습니다.
위 세 가지 메소드는 Parse() 메소드의 오버로드 형태입니다. 모두 성공적인 변환 시 System.DateTime 개체를 반환합니다.
예:
CultureInfo provider = newCultureInfo("en-US"); DateTime date = DateTime.Parse("08/08/2020", provider, DateTimeStyles.AdjustToUniversal);
위 명령문에서는 먼저 IFormatProvider를 구현하는 CultureInfo 클래스의 개체를 만들었습니다. 이제 이 메서드는 제공된 문화권별 형식 정보를 사용하고 지정된 DateTimeStyles 값을 적용하여 입력 문자열을 동등한 DateTime 개체로 변환합니다. 변환이 성공하면 결과 DateTime 객체가 'date' 변수에 저장됩니다.
위 세 가지 메소드는 ParseExact() 메소드의 오버로드된 형태입니다. 모두 성공적인 변환 시 System.DateTime 개체를 반환합니다.
예:
string[] dateFormats = new[] { "yyyy/MM/dd", "MM/dd/yyyy", "MM/dd/yyyyHH:mm:ss"}; CultureInfo provider = newCultureInfo("en-US"); DateTime date = DateTime.ParseExact("08/08/2020", dateFormats, provider, DateTimeStyles.AdjustToUniversal);
이 메소드에 전달된 날짜의 문자열 표현은 문자열 배열에 포함된 지정된 형식과 정확히 일치해야 합니다.
이 메서드의 매개변수 유형은 앞서 본 것과 동일합니다. 이 메서드는 문화권별 형식 정보와 여기에 전달된 스타일을 사용하여 입력 문자열을 동등한 DateTime 개체로 변환하고, 변환에 성공하면 true를 반환합니다. 그렇지 않으면 false를 반환합니다. 결과 DateTime 값은 이 메소드의 'out' 매개변수에 저장됩니다.
이 메서드는 제공된 문화권별 형식 정보 및 스타일을 사용하여 입력 문자열을 날짜로 변환합니다. 이 메서드는 성공적인 변환 시 true를 반환합니다. 그렇지 않으면 false를 반환합니다.
아래는 예시입니다.
코드:
using System; usingSystem.Globalization; publicclassProgram { publicstaticvoidMain() { DateTime date; string[] dateFormats = new[] { "yyyy/MM/dd", "MM/dd/yyyy", "MM/dd/yyyyHH:mm:ss"}; CultureInfo provider = newCultureInfo("en-US"); try { //Parse() date = DateTime.Parse("08/08/2020"); Console.WriteLine("\nParse() method: " + date); //ParseExact() date = DateTime.ParseExact("08/08/2020", dateFormats, provider, DateTimeStyles.AdjustToUniversal); Console.WriteLine("\nParseExact() method: " + date); } catch (Exception ex) { Console.Write(ex.Message); Console.ReadLine(); } //TryParse() if (DateTime.TryParse("08/08/2020", out date)) { Console.WriteLine("\nTryParse() : " + date); } else { Console.WriteLine("Conversion failed"); } //TryParseExact() if (DateTime.TryParseExact("08/08/2020", dateFormats, provider, DateTimeStyles.AdjustToUniversal, out date)) { Console.WriteLine("\nTryParseExact() : " + date); } else { Console.WriteLine("Conversion failed"); } Console.ReadLine(); } }
출력:
C#에서는 DateTime 구조체에서 제공하는 구문 분석 방법을 사용하여 문자열을 DateTime 개체로 변환할 수 있습니다. 이러한 방법 외에도 Convert를 사용하여 문자열을 날짜로 변환할 수 있습니다. 날짜의 문자열 표현을 입력으로 사용하고 해당 DateTime 객체를 반환하는 DateTime() 메서드입니다.
위 내용은 문자열부터 날짜까지 C#의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!