C#自定义加密算法(字符串):ASCII格式

原理

 将一个char类型与一个整数相加,实际上是该字符的 ASCII 值与这个整数相加。
 在计算机中,字符是以 ASCII 码的形式存储和处理的,因此对字符进行数学运算会涉及到 ASCII 码值的加减。


举个例子:

假设有一个字符 'A',它的 ASCII 码值为 65。当你执行 (char)('A' + 1) 时,实际上是将字符 'A' 的 ASCII 码值 65 与整数 1 相加,得到结果 66,然后将结果转换为对应的字符,也就是 'B'。
 因此,表达式 (char)(c + 1) 中的 (c + 1) 实际上是将字符 c 的 ASCII 码值加一,并将结果转换为对应的字符。
    

 private string originalText = "Hello, World!";
 private string encryptedText;

 void Start()
 {
     // 加密数据
     encryptedText = Encrypt(originalText);
     Debug.Log("加密后的数据:" + encryptedText);

     // 解密数据
     string decryptedText = Decrypt(encryptedText);
     Debug.Log("解密后的数据:" + decryptedText);
 }

 private string Encrypt(string text)
 {
     string encrypted = "";
     foreach (char c in text)
     {
         encrypted += (char)(c + 1); // 简单的替换算法,每个字符向后移动一位
     }
     return encrypted;
 }

 private string Decrypt(string text)
 {
     string decrypted = "";
     foreach (char c in text)
     {
         decrypted += (char)(c - 1); // 解密操作,每个字符向前移动一位
     }
     return decrypted;
 }

  • 7
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值