我正在开发用于从12小时格式转换时间24小时格式一个Console
应用:如何连接整数与C#中的字符串?
输入:下午2点03分34秒预期输出:14:03:34
但我得到14:3:34 下面是我的代码片段:
string[] arr_temp = Console.ReadLine().Split(':');
string time = arr_temp[2].ToUpper().Contains("AM") ? "AM" : "PM";
string sec=string.Empty;
for (int i = 0; i < 2; i++)
{
sec+= arr_temp[2][i];
}
int _hour = Int32.Parse(arr_temp[0])==0?0: Int32.Parse(arr_temp[0]);
int _minute = Int32.Parse(arr_temp[1]) == 0 ? 0 : Int32.Parse(arr_temp[1]);
int _sec = Int32.Parse(sec)==0?0: Int32.Parse(sec);
_hour = (time == "PM") ? _hour += 12 : _hour += 0;
_hour = (_hour < 10) ? '0' + _hour : _hour;
_minute = (_minute < 10) ? '0' + _minute : _minute;
_sec = (_sec < 10) ? '0' + _sec : _sec;
我没有得到预期的输出。 请建议。
你看着'则DateTime.ToString( )'? – Haukinger
确实......你真的不应该做所有这些格式化或解析自己。现在将是倚重.NET命名约定的好时机。 –
请检查http://stackoverflow.com/questions/8337625/convert-am-pm-time-to-24-hours-format –