0

画像をキャプチャしてデータベース ANA に保存するためのアプリケーションを開発しています。このコードを試して、Web ページで画像を取得したいです。

        context.Response.ContentType = "image/jpeg";
        Stream strm = DisplayImage(theID);
        byte[] buffer = new byte[2048];
        int byteSeq = strm.Read(buffer, 0, 2048);

        while (byteSeq > 0)
        {

            context.Response.OutputStream.Write(buffer, 0, byteSeq);
            byteSeq=strm.Read(buffer, 0, 2048);
        }
    }

    public Stream DisplayImage(int theID)
    {
        DB_Connection();

        string sql = "SELECT Image_Data FROM Image_T WHERE Img_ID = '" + theID + "'";
        SqlCommand cmd = new SqlCommand(sql, con);
        cmd.CommandType = CommandType.Text;
        cmd.Parameters.AddWithValue("Img_ID", theID);

        object imgg = (byte[])cmd.ExecuteScalar(); 
        //byte[] imagedata = (byte[])cmd.ExecuteScalar();
        try
        {
            return new MemoryStream((byte[])imgg);
        }
        catch
        {
            return null;
        }
        finally
        {
            con.Close();
        }
    }

ボタンクリック呼び出しで

  protected void Button1_Click(object sender, EventArgs e)
    {
        Image1.ImageUrl = "Handler1.ashx?id=" + 101;

    }
4

1 に答える 1

1
 <%@page contentType="text/html" pageEncoding="UTF-8"%>
 <!DOCTYPE html>

 <%@ page import="com.itextpdf.text.pdf.PdfWriter"%>
 <%@ page import="com.itextpdf.text.Document"%>
 <%@ page import="com.itextpdf.text.DocumentException"%>
 <%@ page import="com.itextpdf.text.Element"%>
 <%@ page import="org.apache.pdfbox.pdmodel.PDDocument"%> 
 <%@ page import="org.apache.pdfbox.util.PDFTextStripper"%>
 <%@ page import="org.apache.pdfbox.util.PDFTextStripperByArea"%>
 <%@ page import="java.sql.*" %> 
 <%@ page import="java.io.*" %> 
 <%@ page import="java.lang.*" %> 
 <%@ page import="com.itextpdf.*" %>

 <jsp:useBean id="photo" class="api.images" scope="session" />
 <body onload="setTimeout(function(){window.location = 'test.jsp';}, 1000)">
     <%
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance(); 
Connection con = DriverManager.getConnection(//my aws connection string//);
String temp=(String)session.getAttribute("myId");

String strSQL = "SELECT  bImage FROM [Userdetails].[dbo].[upload_image]      where iImageID='"+temp+"'";

試す {

   int iNumPhoto ;

   iNumPhoto=Integer.parseInt(temp);
   con.setAutoCommit (false);  

   // get the image from the database
  byte[] imgData = photo.getPhoto( con,iNumPhoto ) ;   

   // display the image

   response.setContentType("image/gif");

   OutputStream o = response.getOutputStream();
   o.write(imgData);
   o.flush(); 
   o.close();





}
catch (Exception e)
{
  e.printStackTrace();
  throw e;
}

%>

上記のコードを試してください。//私の接続文字列をあなたのものに置き換えてください// リモートサーバー接続、データベース名、ユーザー名、およびパスワードが必要です

于 2016-05-01T12:22:56.807 に答える