C# Save方法不会产生任何结果

C# Save方法不会产生任何结果,c#,.net,C#,.net,我的目标是将base64字符串转换为图像并保存到磁盘。我有以下代码(主要来自SO答案)- 我在MS Visual Studio 2010 Ultimate(Windows 8.1 Pro x64)上运行了它,没有出现错误,但在C驱动器中找不到该图像文件。我哪里出错了?请尝试以以下方式保存您的文件: File.WriteAllBytes(@"c:\img.gif", bytes); 编辑 无论如何,请将您的代码置于try'n'catch下,以更好地理解文件未保存的原因。尝试将LoadImage更

我的目标是将base64字符串转换为图像并保存到磁盘。我有以下代码(主要来自SO答案)-


我在MS Visual Studio 2010 Ultimate(Windows 8.1 Pro x64)上运行了它,没有出现错误,但在C驱动器中找不到该图像文件。我哪里出错了?

请尝试以以下方式保存您的文件:

File.WriteAllBytes(@"c:\img.gif", bytes);
编辑


无论如何,请将您的代码置于try'n'catch下,以更好地理解文件未保存的原因。

尝试将LoadImage更新为该文件,以找出错误所在,并在MessageBox上设置调试点,以检查发生的全部细节

public static void LoadImage()
    {
        try
        {
            //get a temp image from bytes, instead of loading from disk
            //data:image/gif;base64,
            //this image is a single pixel (black)
            byte[] bytes = Convert.FromBase64String("R0lGODlhAQABAIAAAAAAAAAAACH5BAAAAAAALAAAAAABAAEAAAICTAEAOw==");

            Image image;
            Bitmap bimage;
            using (MemoryStream ms = new MemoryStream(bytes))
            {
                image = Image.FromStream(ms);
            }
            bimage = new Bitmap(image);
            bimage.Save("c:\\img.gif", System.Drawing.Imaging.ImageFormat.Gif);

        }
        catch (Exception ex) {
            MessageBox.Show(ex.Message);
        }
    }

你确定?它在这里工作,我得到了图像。如果你使用一个你肯定有无限制写入权限的不同路径(例如,你的文档文件夹),会发生什么情况?@Damien_the_unsiever,如果代码没有访问路径的权限,那么它将抛出一个异常。可能在保存周围放置一个try/catch,然后查看是否有弹出的内容。您是否考虑过拥有正确的写入权限?OP的代码显然“运行时没有问题”,因此没有要检查的异常。
public static void LoadImage()
    {
        try
        {
            //get a temp image from bytes, instead of loading from disk
            //data:image/gif;base64,
            //this image is a single pixel (black)
            byte[] bytes = Convert.FromBase64String("R0lGODlhAQABAIAAAAAAAAAAACH5BAAAAAAALAAAAAABAAEAAAICTAEAOw==");

            Image image;
            Bitmap bimage;
            using (MemoryStream ms = new MemoryStream(bytes))
            {
                image = Image.FromStream(ms);
            }
            bimage = new Bitmap(image);
            bimage.Save("c:\\img.gif", System.Drawing.Imaging.ImageFormat.Gif);

        }
        catch (Exception ex) {
            MessageBox.Show(ex.Message);
        }
    }