c# 对加密的MP4文件进行解密

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;


namespace WindowsFormsApplication9
{
    public partial class Form1 : Form
    {
        private string res = "";
        public Form1()
        {
            InitializeComponent();
        }


        private void button1_Click(object sender, EventArgs e)
        {
            OpenFileDialog ss = new OpenFileDialog();
            if (ss.ShowDialog() == DialogResult.OK)
            {
                res = ss.FileName;
            }
            fun();
        }
        public void fun()
        {
            FileInfo fileinfo = new FileInfo(res);
            long len =160;
            MessageBox.Show(len.ToString());
            byte[] buff1 = new byte[len];
            byte[] buff2 = new byte[160];
            FileStream fs = new FileStream(res, FileMode.Open);
            fs.Read(buff1, 0, (int)len);
            fs.Close();
            OppositeByteArray(buff1,ref buff2);
            FileStream fw = new FileStream(res, FileMode.Open);
            for (int i = 0; i < 160; i++)
            {
                fw.WriteByte(buff2[i]);
            }
            //fw.Write(buff1, 0, (int)len);
            fw.Write(buff1,0,(int)len);
            fw.Close();
            fileinfo = new FileInfo(res); 
        }
        /// <summary>
        /// 把一个字节数组按位取反,得到一个新的字节数组
        /// </summary>
        /// <param name="inputData"></param>
        /// <param name="outputData"></param>
        public static void OppositeByteArray(byte[] inputData, ref byte[] outputData)
        {
            int len = inputData.Length;


            int temp;


            for (int i = 0; i < len; i++)
            {
                temp = (int)inputData[i];//原字节数组字节转成int型
                outputData[i] = (byte)~temp;//取反后赋给输出字节数组


            }


        }
    }
}

 

posted @ 2015-03-26 21:02  shugen  阅读(1365)  评论(0编辑  收藏  举报