public void SaveLoadBigPolyArrayNET() { var stream = new MemoryStream(); var arr = new BigPolyArray(3, 5, 10); arr[0][0].Set(1); arr[0][1].Set(2); arr[0][2].Set(3); arr[1][0].Set(4); arr[1][1].Set(5); arr[2][0].Set(6); var arr2 = new BigPolyArray(); stream.Seek(0, SeekOrigin.Begin); arr.Save(stream); stream.Seek(0, SeekOrigin.Begin); arr2.Load(stream); Assert.AreEqual(3, arr2.Size); Assert.AreEqual(arr2.Size, 3); Assert.AreEqual(arr2.CoeffCount, 5); Assert.AreEqual(arr2.CoeffBitCount, 10); Assert.IsTrue(arr[0].Equals(arr2[0])); Assert.IsTrue(arr[1].Equals(arr2[1])); Assert.IsTrue(arr[2].Equals(arr2[2])); }
private static BigPolyArray[] ReceiveEncryptedArray(int length, TcpClient client, NetworkStream nwStream, BinaryFormatter binForm) { int bytesRead = 0; byte[] buffer = new byte[client.ReceiveBufferSize]; var encryptedDataBat = new BigPolyArray[length]; for (int i = 0; i < encryptedDataBat.Length; i++) { buffer = new byte[client.ReceiveBufferSize]; bytesRead = nwStream.Read(buffer, 0, client.ReceiveBufferSize); var arr = new BigPolyArray(); using (var ms = new MemoryStream()) { ms.Write(buffer, 0, bytesRead); ms.Seek(0, SeekOrigin.Begin); arr.Load(ms); ms.Flush(); } encryptedDataBat[i] = arr; binForm.Serialize(nwStream, "OK"); } return(encryptedDataBat); }