JsonByByteToObjectTools.cs 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using Newtonsoft.Json;
  7. using parkMonitor.entity;
  8. //using System.Runtime.Serialization.Formatters.Binary;
  9. namespace parkMonitor.Tools
  10. {
  11. public class JsonByByteToObjectTools
  12. {
  13. public static byte[] ObjToJsonByte(AbstractMessage message)
  14. {
  15. string objstr = JsonConvert.SerializeObject(message);
  16. byte[] buffer = Encoding.UTF8.GetBytes(objstr);
  17. return buffer;
  18. }
  19. public static AbstractMessage JsonByteToObj<AbstractMessage>(byte[] bstr) where AbstractMessage : class
  20. {
  21. int count = 0;
  22. for (int i = 0; i < bstr.Length; i++)
  23. {
  24. if (bstr[i] == 0)
  25. {
  26. count = i;
  27. break;
  28. }
  29. }
  30. string str = new UTF8Encoding().GetString(bstr);
  31. AbstractMessage msg = JsonConvert.DeserializeObject<AbstractMessage>(str);
  32. return msg;
  33. }
  34. }
  35. }