zoukankan      html  css  js  c++  java
  • 如何显示二进制流的图片(利用img控件)

    之前在http://www.cnblogs.com/JsonZhangAA/p/5568575.html博文中是利用的image控件来显示的二进制流图片,我现在想的是能

    通过普通的<img id="xx" src="xx"/>这种形式来显示我的二进制流图片吗?必须可以(◑▽◐),就是写法稍微麻烦了一点,img要写成这个样子:

    ,对你看的没错,它的地址指向了一个aspx页面,这个页面有个奇特之处,

    就是我们新建后,不用写任何前台代码,WebForm1前后台代码如下:

    前台:

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="显示爬虫所爬的数据库中的图片.WebForm1" %>

    后台代码:

    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using 显示爬虫所爬的数据库中的图片.Models;
    
    namespace 显示爬虫所爬的数据库中的图片
    {
        public partial class WebForm1 : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {
                int id = int.Parse(Request["id"].ToString());
                DataClasses1DataContext db = new DataClasses1DataContext();
                Response.ContentType = "application/binary;";
                //这个地方图片可以从数据库中读取二进制图片  
                //byte[] img = DBHelper.ReadImg();  
                byte[] img = db.pictureUrl.Where(p=>p.Id==id).First().pictureUrl1.ToArray();
                Response.BinaryWrite(img);
    
                Response.Flush();
                Response.End();  
            }
        }
    }

    我们主页面的前后台代码如下:

    前台:

    <%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>
    
    <!DOCTYPE html>
    
    <html>
    <head runat="server">
        <meta name="viewport" content="width=device-width" />
        <title>Index</title>
    </head>
    <body>
        <div>
            <%foreach(var item in ViewBag.Pictures) %>
            <%{ %>
                 <img src="WebForm1.aspx?id=<%:item.Id %>" />
            <%} %>
        </div>
    
    </body>
    </html>

    后台代码:

    using System;
    using System.Collections.Generic;
    using System.Drawing;
    using System.IO;
    using System.Linq;
    using System.Text;
    using System.Web;
    using System.Web.Mvc;
    using 显示爬虫所爬的数据库中的图片.Models;
    
    namespace 显示爬虫所爬的数据库中的图片.Controllers
    {
        public class HomeController : Controller
        {
            //
            // GET: /Home/
            DataClasses1DataContext db = new DataClasses1DataContext();
            public ActionResult Index()
            {
                ViewBag.Pictures = db.pictureUrl;
                return View();
            }
        }
    }

    最后运行的结果:

  • 相关阅读:
    实现连续测试,要做的事情【译】
    Go语言HTTPServer开发的六种实现
    JSON必知必会【PDF+视频教程】
    给JSONObject添加自定义遍历方法
    利用守护线程隐式关闭线程池
    从错误中学习
    Groovy动态添加方法和属性及Spock单测
    持续测试、持续集成、持续交付、持续部署和DevOps
    有关OAuth 2.0简化模式中步骤D-F的解释
    Spring笔记(五):bean的自动装配
  • 原文地址:https://www.cnblogs.com/JsonZhangAA/p/5574685.html
Copyright © 2011-2022 走看看