SpellRestoration.cs 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. using UnityEngine;
  2. using System.Text;
  3. public class SpellRestoration
  4. {
  5. private string[,] convertTable = new string[65, 2] {
  6. { "A", "あ" },
  7. { "B", "い" },
  8. { "C", "う" },
  9. { "D", "え" },
  10. { "E", "お" },
  11. { "F", "か" },
  12. { "G", "き" },
  13. { "H", "く" },
  14. { "I", "け" },
  15. { "J", "こ" },
  16. { "K", "さ" },
  17. { "L", "し" },
  18. { "M", "す" },
  19. { "N", "せ" },
  20. { "O", "そ" },
  21. { "P", "た" },
  22. { "Q", "ち" },
  23. { "R", "つ" },
  24. { "S", "て" },
  25. { "T", "と" },
  26. { "U", "な" },
  27. { "V", "に" },
  28. { "W", "ぬ" },
  29. { "X", "ね" },
  30. { "Y", "の" },
  31. { "Z", "は" },
  32. { "a", "ひ" },
  33. { "b", "ふ" },
  34. { "c", "へ" },
  35. { "d", "ほ" },
  36. { "e", "ま" },
  37. { "f", "み" },
  38. { "g", "む" },
  39. { "h", "め" },
  40. { "i", "も" },
  41. { "j", "や" },
  42. { "k", "ゆ" },
  43. { "l", "よ" },
  44. { "m", "ら" },
  45. { "n", "り" },
  46. { "o", "る" },
  47. { "p", "れ" },
  48. { "q", "ろ" },
  49. { "r", "わ" },
  50. { "s", "が" },
  51. { "t", "ぎ" },
  52. { "u", "ぐ" },
  53. { "v", "げ" },
  54. { "w", "ご" },
  55. { "x", "ざ" },
  56. { "y", "じ" },
  57. { "z", "ず" },
  58. { "0", "ぜ" },
  59. { "1", "ぞ" },
  60. { "2", "だ" },
  61. { "3", "ぢ" },
  62. { "4", "づ" },
  63. { "5", "で" },
  64. { "6", "ど" },
  65. { "7", "ば" },
  66. { "8", "び" },
  67. { "9", "ぶ" },
  68. { "+", "べ" },
  69. { "/", "ぼ" },
  70. { "=", "ん" },
  71. };
  72. public string ToSpellRestoration(object data)
  73. {
  74. string json = JsonUtility.ToJson(data);
  75. string base64string = System.Convert.ToBase64String(Encoding.UTF8.GetBytes(json));
  76. string spellRestoration = System.Convert.ToBase64String(Encoding.UTF8.GetBytes(json));
  77. return spellRestoration;
  78. }
  79. public T FromSpellRestoration<T>(string spellRestoration)
  80. {
  81. try
  82. {
  83. byte[] byteArray = System.Convert.FromBase64String(spellRestoration);
  84. string jsonBack = Encoding.UTF8.GetString(byteArray);
  85. var restoreData = JsonUtility.FromJson<T>(jsonBack);
  86. return restoreData;
  87. }
  88. catch (System.FormatException exception)
  89. {
  90. return default(T);
  91. }
  92. }
  93. }