프로그램을 만들다가 시간끼리의 뺄셈을 TimeSpan을 이용하는 것을 인터넷에서 돌아다니다가 알게되었는데
Text형식으로 시간 형식을 받아도 Convert.ToDateTime을 통해 변환됨을 알게 되었다.
예를 들면 아래와 같다.
private void TimeGap()
{
DateTime T1 = Convert.ToDateTime(dateTimePicker1.Text);
DateTime T2 = Convert.ToDateTime(dateTimePicker2.Text);
TimeSpan t3 = T2 - T1;
....
문제는 그게 아니라 시간차이를 제대로 계산하기는 하지만 형식이 맘에 들지 않았다.
결과값이 3. 02:12:45으로 표기되는데 3일 2시간 12분 45초 남았다고 표기하고 싶었다.
MS에서는 DateTime의 형식을 바꿔주는 몇가지 함수들을 예시와 함께 제공해주지만
잘 되지 않아서 나는 Split를 써서 분리했다.
...
string tt3 = Convert.ToString(t3);
string[] words= tt3.Split('.', ':'); //.과 :으로 값을 분리한다.
label1.Text = "기한이 "+words[0] +"일" +words[1]+"시간" +words[2]+"분 남았습니다.";
}
+words[3]을 쓰면 초도 표시가 가능하다.
'C계열 > C#' 카테고리의 다른 글
[c#] Two's compliment(2의 보수) (0) | 2021.09.20 |
---|---|
Form간 자료 이동 중 개체 참조가 개체의 인스턴스로 설정되지 않았습니다. (0) | 2020.06.14 |
bool에 대하여 (0) | 2020.02.01 |
[C#] 히스토그램으로 동일 이미지 판별하기 (0) | 2020.01.24 |
좋은 개발자는 코드를 공개한다고 한다. (0) | 2020.01.04 |