C#实现简单的文件加密与解密方式

 更新时间:2023年01月25日 14:49:51   作者:Danny_hi  
这篇文章主要介绍了C#实现简单的文件加密与解密方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

C#实现文件加密与解密

代码:

static class HandleFiles
    {
        public static void EncryptFile(string inputFile, string outputFile)   //加密
        {
            try
            {
                string password = @"12345678";
                UnicodeEncoding UE = new UnicodeEncoding();
                byte[] key = UE.GetBytes(password);

                string cryptFile = outputFile;
                FileStream fsCrypt = new FileStream(cryptFile, FileMode.Create);

                RijndaelManaged RMCrypto = new RijndaelManaged();

                CryptoStream cs = new CryptoStream(fsCrypt,
                    RMCrypto.CreateEncryptor(key, key),
                    CryptoStreamMode.Write);

                FileStream fsIn = new FileStream(inputFile, FileMode.Open);

                int data;
                while ((data = fsIn.ReadByte()) != -1)
                    cs.WriteByte((byte)data);


                fsIn.Close();
                cs.Close();
                fsCrypt.Close();


                MessageBox.Show("Encrypt Source file succeed!", "Msg :");
            }
            catch(Exception ex)
            {
                MessageBox.Show("Source file error!", "Error :");
            }
        }

        public static void DecryptFile(string inputFile, string outputFile)   //解密
        {
            try
            {
                string password = @"12345678";
                UnicodeEncoding UE = new UnicodeEncoding();
                byte[] key = UE.GetBytes(password);

                FileStream fsCrypt = new FileStream(inputFile, FileMode.Open);

                RijndaelManaged RMCrypto = new RijndaelManaged();

                CryptoStream cs = new CryptoStream(fsCrypt,
                    RMCrypto.CreateDecryptor(key, key),
                    CryptoStreamMode.Read);

                FileStream fsOut = new FileStream(outputFile, FileMode.Create);

                int data;
                while ((data = cs.ReadByte()) != -1)
                    fsOut.WriteByte((byte)data);

                fsOut.Close();
                cs.Close();
                fsCrypt.Close();

                MessageBox.Show("Decrypt Source file succeed!", "Msg :");

            }
            catch(Exception ex)
            {
                MessageBox.Show("Source file error", "Error :");
            }
        }
    }

C#进行url加密解密与jquery前端加密解密

当我们程序发布于服务器上会遇到前端报错。因为有特殊原因导致。

此时需要对传输的数据,进行加密,后台进行解密处理

C#进行url加密与解密

HttpUtility.UrlEncode(val);  //utf-8 编码
HttpUtility.UrlDecode(val);  //utf-8 解码
HttpUtility.UrlEncode(val, System.Text.Encoding.GetEncoding(936));  //gb2312编码
HttpUtility.UrlDecode(val, System.Text.Encoding.GetEncoding(936));  //gb2312解码
System.Web.HttpUtility.UrlEncode(val, System.Text.Encoding.GetEncoding("GB2312"));//gb2312编码
System.Web.HttpUtility.UrlDecode(val, System.Text.Encoding.GetEncoding("GB2312"));//gb2312解码

jquery

decodeURIComponent(val);//Jquery解码
encodeURIComponent(val);//Jquery编码

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • C#表达式树Expression基础讲解

    C#表达式树Expression基础讲解

    这篇文章介绍了C#表达式树Expression和基本用法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-12-12
  • c# 类型构造器

    c# 类型构造器

    CLR还支持类型构造器,也称为静态构造器。c#类型构造器可应用引用类型和值类型,永远没有参数
    2012-10-10
  • 关于C#数强转会不会抛出异常详解

    关于C#数强转会不会抛出异常详解

    这篇文章主要给大家介绍了关于C#数强转会不会抛出异常的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-04-04
  • 深入分析C#键盘勾子(Hook),屏蔽键盘活动的详解

    深入分析C#键盘勾子(Hook),屏蔽键盘活动的详解

    本篇文章是对C#键盘勾子(Hook),屏蔽键盘活动进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • C#中调用VB中Inputbox类的实现方法

    C#中调用VB中Inputbox类的实现方法

    本文主要介绍在项目中引用Microsoft.VisualBasic,间接使用VB中的各种类库的方法,或者自己创建函数,调用自定义方法,以实现InputBox相关的功能。
    2016-05-05
  • C#实现泛型动态循环数组队列的方法

    C#实现泛型动态循环数组队列的方法

    队列一种先进先出的数据结构,本文通过实例代码给大家介绍下C#实现泛型动态循环数组队列的方法,感兴趣的朋友一起看看吧
    2022-01-01
  • C#基于Mongo的官方驱动手撸一个Super简易版MongoDB-ORM框架

    C#基于Mongo的官方驱动手撸一个Super简易版MongoDB-ORM框架

    本文给大家分享C#基于Mongo的官方驱动手撸一个简易版MongoDB-ORM框架,是一款属于super简易版的,通过图文的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2021-05-05
  • WinForm中的几个实用技巧汇总

    WinForm中的几个实用技巧汇总

    这篇文章主要介绍了WinForm中的几个实用技巧,是进行C#程序设计中经常用到的技巧,需要的朋友可以参考下
    2014-08-08
  • C# byte转为有符号整数实例

    C# byte转为有符号整数实例

    这篇文章主要介绍了C# byte转为有符号整数实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • C#微信分享代码

    C#微信分享代码

    这篇文章主要为大家详细介绍了C#微信分享的实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10

最新评论