public void TestBinary2() { using (var memmoryStream = new MemoryStream(new byte[1024], true)) { var phoneActivity = new PhoneActivityEntry(1000, 10000, -123.12344); using (var binaryWriter = new BinaryWriter(memmoryStream)) using (var binaryReader = new BinaryReader(memmoryStream)) { phoneActivity.ToBinary(binaryWriter); binaryWriter.Flush(); memmoryStream.Position = 0; var deserialized = PhoneActivityEntry.FromBinary(binaryReader).First(); Assert.AreEqual(phoneActivity, deserialized); } } }
public static void Main(string[] args) { var milanoZipFile = @"C:\Users\Yuval\Downloads\november.zip"; var milanoOutputFolder = @"C:\Users\Yuval\Downloads\MilanoPhoneActivity"; foreach (var(dateFileName, dataStream) in ZipUtils.IterateEntries(milanoZipFile).Take(2)) { using (dataStream) { var date = Path.GetFileNameWithoutExtension(dateFileName); var dateFolder = Path.Combine(milanoOutputFolder, date ?? throw new NullReferenceException()); Directory.CreateDirectory(dateFolder); using (var streamWriterManger = StreamWriterManger.Create(dateFolder, "bin")) foreach (var(timestamp, phoneActivityEntry) in PhoneActivityEntry.ExtractWithTimestamp(dataStream)) { var timestampStream = streamWriterManger.GetStream(timestamp); phoneActivityEntry.ToBinary(timestampStream); } } } }