【问题标题】:System.Web.UI.WebControls.Image does not contain a definition for Save? Saving imageSystem.Web.UI.WebControls.Image 不包含保存的定义?保存图像
【发布时间】:2016-05-16 23:55:06
【问题描述】:

我有一个 C# Web 应用程序,并且有一个从字节数组生成的图像。

byte[] imageBytes = Convert.FromBase64String(b64);
            MemoryStream ms = new MemoryStream(imageBytes, 0,
              imageBytes.Length);
            ImageStudent.ImageUrl = "data:image/jpeg;base64," + b64;

这会在 Web 应用程序中完美显示图像。但是我想将此图像保存到项目中的文件夹中。我试过这段代码:

String FilePath;
            FilePath = Server.MapPath("~/Images/test2.jpg");
            ImageStudent.Save(FilePath, ImageFormat.Jpeg);

但是我得到了错误:

System.Web.UI.WebControls.Image does not contain a definition for Save

我使用的所有 .dll 都需要用于 web 应用程序上的其他功能,还有其他方法可以保存此图像吗?

【问题讨论】:

    标签: c# asp.net image save


    【解决方案1】:

    System.Drawing.Image 是您要查找的命名空间。

    System.Drawing.Bitmap b = new System.Drawing.Bitmap(Server.MapPath("~/Images/test2.jpg"));
    b.Save(saveFilePath , System.Drawing.Imaging.ImageFormat.Jpeg);
    

    【讨论】:

    • 感谢一切正常,我使用的是 System.Drawing.Imaging;干杯杰里米
    • 如果您认为这可能是命名空间冲突(歧义),只需使用 System.Drawing.... 完全限定它
    【解决方案2】:

    您只需要获取字节数组并将其保存在您想要的任何位置。一个基本示例是这样的:

    File.WriteAllBytes(@"C:\CopyofImage.jpg", imageByte);
    

    除非您自己扩展它们,否则您无法为现有库(例如 Save on Image 类)编写新方法。

    【讨论】:

      猜你喜欢
      • 2023-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-12
      • 2012-04-19
      • 2021-05-24
      • 2019-05-28
      • 1970-01-01
      相关资源
      最近更新 更多