IT

DateTime을 특정 문자열 형식으로/또는 특정 문자열 형식에서 변환하는 방법(예: 지정된 형식은 "yyyyMMDD")?

itgroup 2023. 8. 1. 20:26
반응형

DateTime을 특정 문자열 형식으로/또는 특정 문자열 형식에서 변환하는 방법(예: 지정된 형식은 "yyyyMMDD")?

문자열 형식의 날짜 시간을 변환하는 데 문제가 있지만 다음을 사용하여 변환할 수 없습니다."yyyyMMdd"서식을 정하다

내 코드는:

string tpoc = refSubClaim.BenefitsFolder.BenefitFolderIdNumber.ToString();
string[] tpocinfo = Regex.Split(tpoc,";");

for (int i = 0; i < tpocinfo.Length; i++)
{
    switch (i)
    {
        case 0:
        {
            string[] tpoc2 = Regex.Split(tpocinfo[0], ",");
            claimantAuxillaryRecord.TPOCDate2 = tpoc2[0].ToString();
            claimantAuxillaryRecord.TPOCAmount2 = Convert.ToDecimal(tpoc2[1]);
            claimantAuxillaryRecord.FundingDelayedBeyondTPOCStartDate2 = tpoc2[2].ToString();
        }
        break;

"dd" 형식의 문자열에 날짜가 있는 경우MMyyyy"를 "yyyyyMMDD"로 변환하려면 다음과 같이 합니다.

DateTime dt = DateTime.ParseExact(dateString, "ddMMyyyy", 
                                  CultureInfo.InvariantCulture);
dt.ToString("yyyyMMdd");

구문 분석 날짜 시간:

DateTime을 구문 분석하려면 다음 방법 중 하나를 사용합니다.

또는 다음과 같은 시도 구문 분석 패턴을 사용할 수 있습니다.

사용자 지정 날짜시간 형식 문자열에 대해 자세히 알아보십시오.

DateTime을 문자열로 변환하는 중:

DateTime을 "yyyyMMDD" 형식의 문자열로 반환하려면 method를 사용할 수 있습니다.

  • 코드 조각 예제:string date = DateTime.ToString("yyyyMMdd");
  • 대문자 M은 월을 나타내고 소문자 m은 분을 나타냅니다.

고객 사례:

당신의 경우, 날짜가 다른 형식이거나 누락된 시나리오를 처리하고 싶지 않다고 가정하면, 사용하는 것이 가장 편리할 것입니다.ParseExact:

string dateToParse = "20170506";
DateTime parsedDate = DateTime.ParseExact(dateToParse, 
                                          "yyyyMMdd",
                                          CultureInfo.InvariantCulture);

문자열을 다음으로 변환할 수 있습니다.DateTime다음과 같은 값:

DateTime date = DateTime.Parse(something);

변환할 수 있습니다.DateTime다음과 같은 형식화된 문자열에 값을 지정합니다.

date.ToString("yyyyMMdd");

yyyy-MM-dd 날짜 형식의 문자열:예:

TxtCalStDate.Text = Convert.ToDateTime(objItem["StartDate"]).ToString("yyyy/MM/dd");   

TIME과 함께 DATE를 문자열로 사용하려는 경우에도 마찬가지입니다.이렇게 할 수 있습니다.

    //Date and Time is taking as current system Date-Time    
    DateTime.Now.ToString("yyyyMMdd-HHmmss");

사용하다DateTime.TryParseExact()특정 날짜 형식과 비교하려는 경우

   string format = "yyyyMMdd"; 
    DateTime dateTime;
    DateTime.TryParseExact(dateString, format, CultureInfo.InvariantCulture,
                                             DateTimeStyles.None, out dateTime);

사용할 수 있습니다.DateTime.TryParse()대신에DateTime.Parse().
와 함께TryParse()만약 그것이 성공적이었고 그리고 그것과 함께라면 당신은 반환 가치를 가집니다.Parse()예외를 처리해야 합니다.

그냥 이런 식으로 하세요.

string yourFormat = DateTime.Now.ToString("yyyyMMdd");

해피 코딩 :)

포맷으로 변환하는 간단한 방법입니다.

 DateTime.Now.ToString("yyyyMMdd");

아니요, yyyy/mm/dd를 가진 문자열이고 yyyyy로 필요합니다.MMDD 포맷

끈에 있는 슬래시만 제거하면 되는 거 아닌가요?

예:

myDateString = "2013/03/28";
myDateString = myDateString.Replace("/", "");

이제 myDateString이 "20130328"이어야 합니다.

과잉 살상이 덜합니다 :)

속성 이름을 기준으로 할당을 통해 문자열을 날짜로 변환하려고 하는 것 같습니다.

claimantAuxillaryRecord.TPOCDate2 = tpoc2[0].ToString();

이는 현재 UI 문화 때문일 수 있으므로 할당할 때 날짜 문자열을 올바르게 해석할 수 없습니다.

C# 6에서:

var dateTimeUtcAsString = $"{DateTime.UtcNow:o}";

결과: "2019-01-15T 11:46:33.2752667Z"

이 답을 찾다가 우연히 발견한 더 간단한 방법;

string date = DateTime.Now.ToString("yyyyMMdd", System.Globalization.CultureInfo.GetCultureInfo("en-US"));

이 코드를 사용해 보십시오.

claimantAuxillaryRecord.TPOCDate2  = Convert.ToDateTime(tpoc2[0]).ToString("yyyyMMdd"); 

또는

claimantAuxillaryRecord.TPOCDate2 = Convert.ToDateTime(tpoc2[0]).ToString("yyyyMMdd hh:mm:ss"); 

언급URL : https://stackoverflow.com/questions/3477735/how-to-convert-datetime-to-from-specific-string-format-both-ways-e-g-given-fo

반응형