【发布时间】:2015-06-03 00:55:32
【问题描述】:
我有一个字节数组,我想一个一个地读取这些字节并将其转换为 int。我正在获取数组字节中的日期,因此需要从中创建 DataTime 对象。我正在使用以下代码。从性能的角度来看,最好的方法应该是什么。
byte[] date = {25, 10, 13, 04, 16, 26} //day month year hour minute second
CaptureTime = new DateTime(
(int)(new ArraySegment<byte>(date, 2, 1).ToArray()[0]), // Year
(int)(new ArraySegment<byte>(date, 1, 1).ToArray()[0]), // Month
(int)(new ArraySegment<byte>(date, 0, 1).ToArray()[0]), // Day
(int)(new ArraySegment<byte>(date, 3, 1).ToArray()[0]), //Hours
(int)(new ArraySegment<byte>(date, 4, 1).ToArray()[0]), //Minutes
(int)(new ArraySegment<byte>(date, 5, 1).ToArray()[0])); //Seconds
上面的代码运行良好,但从性能角度来看还不错,还是有更好的方法来处理这个问题?
【问题讨论】:
-
我投票结束这个问题作为离题,因为这更适合 codereview.stackexchange.com
-
wtf 错了
(int)date[2] -
代码显然缺少与字符串的一对转换:)... 真的不明白你为什么要把这么复杂的代码作为起点。
-
我已经编辑了你的标题。请参阅“Should questions include “tags” in their titles?”,其中的共识是“不,他们不应该”。