Base64.cs 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace IPADDemo.Util
  7. {
  8. public static class Base64
  9. {
  10. /// <summary>
  11. /// Base64加密
  12. /// </summary>
  13. /// <param name="codeName">加密采用的编码方式</param>
  14. /// <param name="source">待加密的明文</param>
  15. /// <returns></returns>
  16. public static string EncodeBase64(Encoding encode, string source)
  17. {
  18. byte[] bytes = encode.GetBytes(source);
  19. string encoding = Convert.ToBase64String(bytes);
  20. return encoding;
  21. }
  22. /// <summary>
  23. /// Base64加密,采用utf8编码方式加密
  24. /// </summary>
  25. /// <param name="source">待加密的明文</param>
  26. /// <returns>加密后的字符串</returns>
  27. public static string EncodeBase64(string source)
  28. {
  29. return EncodeBase64(Encoding.Default, source);
  30. }
  31. /// <summary>
  32. /// Base64解密
  33. /// </summary>
  34. /// <param name="codeName">解密采用的编码方式,注意和加密时采用的方式一致</param>
  35. /// <param name="result">待解密的密文</param>
  36. /// <returns>解密后的字符串</returns>
  37. public static string DecodeBase64(Encoding encode, string result)
  38. {
  39. string decode = "";
  40. byte[] bytes = Convert.FromBase64String(result);
  41. try
  42. {
  43. decode = encode.GetString(bytes);
  44. }
  45. catch
  46. {
  47. decode = result;
  48. }
  49. return decode;
  50. }
  51. /// <summary>
  52. /// Base64解密,采用utf8编码方式解密
  53. /// </summary>
  54. /// <param name="result">待解密的密文</param>
  55. /// <returns>解密后的字符串</returns>
  56. public static string DecodeBase64(string result)
  57. {
  58. return DecodeBase64(Encoding.Default, result);
  59. }
  60. }
  61. }