public static byte[] Encode(LocalVideosInfoPacket packet) { using (MemoryStream ms = new MemoryStream()) { PacketBase.WriteBytes(ms, TimePeriodPacket.Encode(packet.TimePeriod)); PacketBase.WriteBytes(ms, packet.ValidTimePeriods.Length); for (int i = 0; i < packet.ValidTimePeriods.Length; i++) { PacketBase.WriteBytes(ms, VideoTimePeriodsPacket.Encode(packet.ValidTimePeriods[i])); } return(ms.ToArray()); } }
private void write() { try { if (!new FileInfo(_fileName).Directory.Exists) { new FileInfo(_fileName).Directory.Create(); } using (FileStream fs = new FileStream(_fileName, FileMode.Create, FileAccess.Write, FileShare.Read)) { write(fs, ParamCode.DownloadBase, DownloadInfoParam.Encode(DownloadInfo)); write(fs, ParamCode.VideoBaseInfo, VideoBasePacket.Encode(VideoBase)); write(fs, ParamCode.TimePeriods, VideoTimePeriodsPacket.Encode(TimePeriods)); } } catch (Exception ex) { Console.WriteLine(ex); } }