我的驱动器上有一个图像,我通过添加数值来加密字节,现在我该如何编写修改后的文件并替换旧文件?
这是我的加密方法[非常新鲜,因为我只是对事物的感觉: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正确读取文件的。这会返回文件的路径吗?
答案 0 :(得分:5)
File.WriteAllBytes(dialog.FileName, ImageBytes);