将修改后的映像写入磁盘

时间:2010-01-15 03:13:11

标签: c# encryption io

我的驱动器上有一个图像,我通过添加数值来加密字节,现在我该如何编写修改后的文件并替换旧文件?

这是我的加密方法[非常新鲜,因为我只是对事物的感觉:P]:

    private void EncryptFile()
    {            
        OpenFileDialog dialog = new OpenFileDialog();
        dialog.Filter = "JPEG Files (*.jpeg)|*.jpeg|PNG Files (*.png)|*.png|JPG Files (*.jpg)|*.jpg|GIF Files (*.gif)|*.gif";
        dialog.InitialDirectory = @"C:\Users\Sergio\Desktop";
        dialog.Title = "Please select an image file to encrypt.";
        if (dialog.ShowDialog() == DialogResult.OK)
        {
            byte[] ImageBytes = File.ReadAllBytes(dialog.FileName);

            for (int i = 0; i < ImageBytes.Length; i++)
            {
                ImageBytes[i] = (byte)(ImageBytes[i] + 5);
            }                
        }             
    }

我被困在那里。我真的不知道如何处理。从技术上讲,在for循环之后,我在byte [] ImageBytes中有我修改过的图像。现在我怎么能把它写在与图像完全相同的位置?

哇!另外,我是通过使用dialog.FileName正确读取文件的。这会返回文件的路径吗?

1 个答案:

答案 0 :(得分:5)

File.WriteAllBytes(dialog.FileName, ImageBytes);