ASP.NET上传文件到数据库(转贴)

ASP.NET初学笔记:FileUpload控件 FileUpLoad控件用于用户向Web应用程序上传文件。文件上传后,可以把文件保存在任意地方,通常把文件保存在文件系统或数据库。向页面添加FileUpLoad控件会自动地为服务器的标签添加enctype="multipart/form-data"属性。1.  把文件保存到文件系统以下代码页面展示了如何使用FileUpLoad控件把图片上传到应用程序。 阅读详情
一、上传到数据库。

(sqlserver 
为例)
存储文件的数据库中的字段为 jimage,类型为 image。
在代码中定义类型为 byte[]的一个变量 buf,在上传组件的 PostFile 中,从它的 InputStream读出字节数组,将 buf 赋给数据字段 jimage 就可以了。
int len = this.File1.PostedFile.ContentLength; 
byte[] buf = new byte[len]; 
  
Stream i = this.File1.PostedFile.InputStream; 
i.Read(buf,0,buf.Length); 
news.jimage=buf;
//news 
为新闻类,jimage 为它的图片属性,即对应表中的 image
i.Close();
显示图像:
图片的显示也很简单,在 Persister 中注意一下:
SqlDataReader reader=SqlHelper.ExecuteReader("select jimage from news");
 
if( reader.Read() )
 {
 news.jimage=(byte[])reader["jimage"];
}
reader.Close();
得到 byte[]的内容,要显示也比较简单,在 Page_Load()方法中加两句话即可:
Response.ContentType="image/jpeg";
Response.BinaryWrite(ti.content);
这样就可以输出图像了,如果想对图像做一点调整,如旋转,转换格式、获得图片格式(是 jpg还是 gif),请参考下面代码:
//
同样,声明输出不是 HTML 而是 image
 Response.ContentType="image/jpeg";
 
 //
从 byte[]得到一个 image 对象
 System.Drawing.Image bmap = Bitmap.FromStream(new MemoryStream(ti.content));
 //
操作一下这个图像
  bmap.RotateFlip(RotateFlipType.Rotate180FlipY);
  //
输出到页面上
 bmap.Save(Response.OutputStream,System.Drawing.Imaging.ImageFormat.Jpeg);
//
释放image
bmap.Dispose();
要显示图片在某一个 image 控件上,可采用下法:
要显示图片的位置放一个 image 控件然后将它的 src 指向这个页面就行了!
例如:
页面:ViewImage.aspx
<%@Import Namespace="System.IO"%>
<%@Import Namespace="System.Data"%>
<%@Import Namespace="System.Data.SqlClient"%>
<%@ Page Language="C#" Debug="True" %>
<script runat="server">
private void Page_Load(Object sender, System.EventArgs e)
{
string imgid =Request.QueryString["UserID"];
string connstr="data source=(local);initial catalog=Test;integrated security=SSPI;persist security info=True;packet size=4096";
string sql="SELECT IMGTITLE,imgdata, imgtype FROM ImageStore WHERE id = '"
+ imgid  "'";


SqlConnection connection = new SqlConnection(connstr);
SqlCommand command = new SqlCommand(sql, connection);
connection.Open();
SqlDataReader dr = command.ExecuteReader();

if(dr.Read())
{
Response.ContentType = dr["imgtype"].ToString();
Response.BinaryWrite( (byte[]) dr["imgdata"] );
Response.Write(dr["IMGTITLE"].ToString());
}
connection.Close();
}
</script>

显示图片的页面上放一个 image 控件 imgZYF  在后代码中写:
imgZYF.ImageUrl =“ViewImage.aspx?UserID=" +userId
二、上传到服务器的磁盘:

  页面文件:upload01.aspx
<%@ Page language="c#" Codebehind="upload01.aspx.cs" AutoEventWireup="false" Inherits="upload01.upload01" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
 <HEAD>
  <title>
上传到磁盘</title>
 </HEAD>
 <body>
  <form id="Form1" method="post" runat="server">
   <TABLE height="300" cellSpacing="1" cellPadding="1" width="500" border="0" class="bigtable-bj"
    align="center">
    <TR>
     <TD><FONTFONT-SIZE: 9pt;">宋体
">
       <TABLE id="Table1" style="WIDTH: 384px; HEIGHT: 54px" cellSpacing="1" cellPadding="1" width="384"
        border="0" align="center">
        <TR>
         <TD>
选择文件:</TD>
         <TD><INPUT type="file" id="myfile" runat="server"></TD>
        </TR>
        <TR>
         <TD style="HEIGHT: 21px">
输入备注:</TD>
         <TD style="HEIGHT: 21px">
          <asp:TextBox id="TextBox1" runat="server"></asp:TextBox></TD>
        </TR>
        <TR>
         <TD></TD>
         <TD><INPUT type="button" value="
上传文件" runat="server" id="Button1" name="Button1">&nbsp;
          <INPUT type="submit" value="
清空选择"></TD>
        </TR>
       </TABLE>
      </FONT>
     </TD>
    </TR>
   </TABLE>
  </form>
 </body>
</HTML>

  
后置代码:upload01.aspx
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace upload01
{
 public class upload01 : System.Web.UI.Page
 {
  protected System.Web.UI.HtmlControls.HtmlInputButton Button1;
  protected System.Web.UI.WebControls.TextBox TextBox1;
  protected System.Web.UI.HtmlControls.HtmlInputFile myfile;
 
  private void Page_Load(object sender, System.EventArgs e)
  {
  

  }
 
  private void Button1_ServerClick(object sender, System.EventArgs e)
  {
   //
取得客户端路径及文件名
   string str=myfile.PostedFile.FileName;
   //
取得文件类型,如.jpg
   string filename2=str.Substring(str.LastIndexOf(".")).ToString().Trim();
     //
取得文件大小,单位K
   double filesize=myfile.PostedFile.ContentLength/1024.00;
   //
以时间刻度定义文件名
   string filename1=DateTime.Now.Ticks.ToString();
    myfile.PostedFile.SaveAs(Server.MapPath("/upload01/"+filename1+filename2));
   //
将文件名及相关信息存到数据库中
  }
 }
}
   将文件上传到磁盘中,在表中将文件地址或路径记录下来,这样就可以在后面的程序来引用了。

  转载于:http://www.evget.com/zh-CN/article/2272/default.aspx

   我是这样上传的:
       其中:NewInsertCommand是一个存储过程,只有一个参数@image

    protected void Button1_Click(object sender, EventArgs e)
    
{
        
if (File1.HasFile)
        
{
            
int len = this.File1.PostedFile.ContentLength;
            
byte[] buf = new byte[len];
            Stream i 
= this.File1.PostedFile.InputStream;
            i.Read(buf, 
0, buf.Length);
            SqlConnection con 
= new SqlConnection(ConfigurationManager.ConnectionStrings["drop"].ConnectionString);
            SqlCommand cmd 
= new SqlCommand("NewInsertCommand", con);
            cmd.CommandType 
= CommandType.StoredProcedure;
            cmd.Connection 
= con;
            con.Open();
            cmd.Parameters.AddWithValue(
"@image", buf);
            cmd.ExecuteNonQuery();
            i.Close();
            con.Close();
        }

    }
VB.Net实现将文本文件中的数据自动插入数据库的小工具 1.原因:大家都遇到过需要手动输入大量数据到数据库中的任务(例如:客户委托将其人事管理系统的资料输入到数据库中),不但耗时而且无技术含量。 2.目的:节省时间,有空余时间承接其他软件设计任务,提高上级对自身的重视程度。 3.模拟:假设  Fu  Chen接到一个任务。将某部门的人员的基本信息输入到数据库中由于种种原因需要手动输入。需要添加的字段分别简化为 人员编号,用户名,口令,性别,住 址 阅读详情

相关推荐

asp.net 上传文件并将路径写入数据库

1、在页面前端添加浏览文件使用的打开对话框,获取要上传的文件路径及文件名 2、添加上传按钮,用户点击后上传文件 3、点击上传按钮 //上传图片 protected void upLoad_Click( object sender, EventArgs e) { try { if (upFile.PostedFil

无涯 2372

ASP.NET 多文件上传(上传文件大小处理,上传文件分类文件夹处理,数据库存储,仿倒链处理)

首先看看html代码,有个隐藏域,里面装FileUpload(上传),button(提交),textbox(计数文件个数大小),通过JS点击图片完成隐藏域里的上传提交操作。配置文件:1、解决文件上传大小:2、g一、HTML+后台upload_info.aspx二、js部分 &lt;script type="text/javascript"&gt; $(document).rea...

MarkManYUN的博客 542

<.Net><VB>使用vb.net实现通过ftp协议进行文件上传与下载

ftp传输是一种文件传输协议,在很多时候,可以提供数据传输功能。 软件工具:visual studio 2019 win10系统 打开visual studio 2019,新建一个窗体项目。 从ftp服务器下载文件: Dim req As FtpWebRequest = CType(WebRequest.Create("ftp://192.168.1.102/" + TextBox1.Text + ".txt"), FtpWebRequest) req.Method = WebReque

用沸腾的热血,支付我们的人生吧! 4647

上传文件到服务器并将文件路径存入数据库

在做练手项目的时候总有需要上传文件的功能点,如何简单快捷的实现呢? 首先,我们需要将下面的类引入你的项目,新建一个config包放进去就好。 public class FileUtil { public static String upload( MultipartFile mFile,HttpServletRequest request){ SimpleDateFormat yforma...

了迹奇有没 1万+

asp.net上传文件到数据库的解决方案

现在,我们来看存放文件的数据库表结构,这里,我们给出建立表的标准SQL语句: CREATE TABLE tblBooksUpload (  DocID int NOT NULL IDENTITY Primary Key ,  DocTitle varchar (200) ,  Doc image,  DocType varchar (50) ,  Entrydate datetime Default GetDate() ) 以上的语句中,我们看到数据表tblBooksUpload包含五个字段: ·字段DocID是表的关键字段,数据记录编号; ·字段DocTitle是用来简单说明上传文件的,如

Halcon和C#联合编程实现硬币识别(个人入门练习)

本人为机器视觉入门小白,自己突发奇想 1.图片数据来源和分析 2.HALCON实现 3.C#搭建界面框架 4.C#中嵌入HALCON代码,即联合编程 5.导出.exe文件,运行以及Debug 目标是这样的,在图片中识别出每种类型的硬币数量,然后计算出总钱数。先上结果,再细说过程。 C#界面和识别结果: 1.图片数据来源和分析 图片大小及格式均统一,拍摄的时候已经尽可能的去除了背景噪点,所以图像处理的要求并不很高(重点在于思路)。硬币区分原理本人代码采用直径范围来判断(也可以半径或区域面积,HALCON算子

Demobird的博客 3614

使用ASP.NET上传多个文件到数据库

如果仅仅是上传一个文件,最好是使用FileUpload控件,  可以使用FileUpload1.FileContent.Length得到文件大小,  FileUpload1.FileBytes得到其字节数组, 代码略.如果要上传多个文件, 其客户端代码与使用ASP.NET上传多个文件到服务器基本相同, 本例中加入了下载的示例代码。效果图如下:数据库脚本create data

amandag的专栏 3025

手把手教你搭建离线语音助手:FunASR+DeepSeek+TTS保姆级教程

本文详细介绍了如何利用FunASR、DeepSeek和TTS技术搭建离线语音助手系统。从环境配置、模型部署到唤醒词检测优化、语音识别与语义理解联调,再到语音合成与系统集成,提供全链路实战教程。特别适合智能家居控制、企业内部知识问答等需要数据隔离的场景,实现高响应、低延迟的离线语音交互体验。

weixin_30316097的博客 475

Asp.Net上传文件,保存文件路径到数据库

把下面的代码保存为Upload.aspx即可运行(事先在同目录下建立一个Upload文件夹保存上传的文件,再建立一个数据库、表Upload,字段ID:自动编号,FilePath:文本型):%@Import Namespace =Namespace="System.Data"%>%@#@Import Namespace="System.Data.OleDb"%> %@Import Nam

uu_ovo的专栏 1706

Linux显卡管理避坑指南:为什么Xorg总是占用你的NVIDIA GPU?

本文深入解析了在Linux系统上,尤其是双显卡笔记本中,Xorg显示服务器进程占用NVIDIA GPU的根本原因。文章从Xorg的驱动加载机制和NVIDIA驱动的独占性入手,详细对比了禁用配置文件、手动配置xorg.conf、使用官方PRIME方案以及切换到Wayland等主流解决方案的优缺点与适用场景,旨在帮助用户有效释放GPU资源,确保深度学习、游戏等计算任务能独占显卡性能。

xgboost6farmer的博客 267

AUTOSAR Dem模块实战配置:从理论到代码生成的完整指南

本文提供了一份AUTOSAR Dem模块从理论到代码生成的完整实战配置指南。文章详细拆解了配置流程,涵盖Dem模块的核心角色、通用骨架搭建、事件与DTC映射、消抖机制配置,以及与BswM、EcuM、DCM等模块的联调方法,旨在帮助汽车电子工程师快速掌握诊断事件管理的关键配置步骤,生成可运行的代码。

3c4x5z6v7b的博客 455

ASP.NET实现文件的上传与下载(包括用数据库存取文件)

文件上传时,在Form中必须进行如下的设置:另外,如果上传的文件大小超过2M时,还要修改web.config的内容以使程序能够正确运行,在和中加入下面的代码:其中maxRequestLength就是要上传的文件的内容的最大长度.下面是实现多个文件上传的源代码    protected void btnupload_Click(object sender, EventArgs e)    {  

IT漫步者 2591

OAI数据集申请下载全攻略:从个人NDA账号注册到数据包下载的保姆级避坑指南

本文提供OAI数据集申请下载的完整指南,涵盖从个人NDA账号注册到数据包下载的全流程。重点解析login.gov验证陷阱、浏览器兼容性问题、NDA权限申请技巧及nda-tools高效使用方法,帮助医学影像研究者避开常见技术障碍,快速获取全球骨关节炎研究数据库OAI的宝贵数据资源。

weixin_28698059的博客 749

ASP.NET上传文件并记录到数据库

ASP.NET上传文件并记录到数据库 (2011-07-19 11:02:07) 转载▼ 标签: 杂谈 分类: asp.net学习 using System; using System.Data; using System.Configuration; using System.Web; using System.We...

dieyanshun4469的博客 287

AI应用架构师总结:智能问答系统用户意图识别的8种方法与实践!

意图识别是智能问答系统的大脑入口,其技术水平决定了系统能否准确捕捉用户的核心诉求。本文系统剖析了从基础规则到前沿PLM的8种核心意图识别方法透明简单,冷启动快,维护成本高。中等规模场景基线,依赖特征工程。利用词义和局部/序列信息,训练成本高。当前最优精度,需大量资源。添加意图灵活,冷启动友好,精度可能略逊。提升鲁棒性,系统变复杂。解决歧义和自然交互的关键(多轮)。增强专业领域理解和推理能力。成功的意图识别模块需要:精准的意图定义(Schema)是前提!

AI云原生与云计算技术学院 1632

基于ROS2系统开发机器人

以上是基于ROS 2开发机器人的基本流程和一个简单的发布者-订阅者示例。通过这个流程,你可以逐步扩展和优化你的机器人系统,实现更复杂的功能。

xuweilin的博客 1494

Asp.Net上传文件示例(保存文件路径到数据库)

把下面的代码保存为Upload.aspx即可运行(事先在同目录下建立一个Upload文件夹保存上传的文件,再建立一个数据库、表Upload,字段ID:自动编号,FilePath:文本型): <%@ImportNamespace=Namespace="System.Data"%><%'@ImportNamespace="System.Data.OleDb"%>&...

weixin_30619101的博客 954

【CAN总线测试】——使用VH6501 进行Busoff快慢恢复测试

即在IDBase中填标准帧11位二进制ID,如果不满11位,高位补零,凑齐11位,并将下方CurrTriggerField设置干扰前一位AckSlot位,Triggeroffset设置为0。首先确认环境支持VN6501,6501硬件连接成功后,工程的小闪电是正常黄色状态,若是灰色证明缺少License,或者软件安装环境不正确。填写干扰报文ID、干扰位置 注意这里的干扰位置是实际干扰的前一位,TriggerOffset表示偏移量,可以干扰某个字节的具体位.找到并打开Panel后,开启工程,并且配置面板。

LOVE135149的博客 5629

vb上传文件到MySQL_ASP.NET上传文件到数据库VB版

代码如下:敬请过目!If Me.FileUpload1.PostedFile.ContentLength > 0 ThenDim cn As New Data.OleDb.OleDbConnectionDim dc As Data.OleDb.OleDbCommandDim para As Data.OleDb.OleDbParameterDim SQL, FileName As Strin...

weixin_39531594的博客 215

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

在 ASP.NET Core 6.0 Web API 中将 Excel 文件数据上传并保存到数据库中

在 ASP.NET Core 6.0 Web API 中将 Excel 文件数据上传并保存到数据库中,本文将探讨使用 ASP.NET Core Web API 上传 Excel 文件并将其数据保存到数据库的分步过程。我们将利用NPOI库和 Entity Framework Core 来实现此功能。

csdn_aspnet的专栏,请点击博客主页右上角三个点中的私信联系 7082

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Asp.Net上传文件示例(保存文件路径到数据库).txt

把下面的代码保存为Upload.aspx即可运行(事先在同目录下建立一个Upload文件夹保存上传的文件,再建立一个数据库、表Upload,字段ID:自动编号,FilePath:文本型):%@Import Namespace =Namespace="System.Data"%>%@Import Namespace="System.Data.OleDb"%> %@Import Namespac

1071

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

asp.NET上传文件到指定文件夹,ACCESS数据库,SQL数据库代码

/*我修改了一天时间.终于找到门路了。呵呵ACCESS中存放文件内容的字段类型为:OLE对象SQL中存放文件内容的字段类型为:image此代码为上传文件代码.梢后整理发布下载文件代码代码设计实现功能:asp.NET上传文件到指定文件夹,ACCESS数据库,SQL数据库代码已经测试文件格式 .TXT,JPG..MDB.GIF*/using System;using System.

xqf222的专栏 2868

ASP.NET MVC4上传文件,并将excel内容导入数据库,导入后删除文件

关于ASP.Net MVC直接在控制器书写方法!废话不多少,直接上代码!  public ActionResult MoreInput(HttpPostedFileBase uploadFile)         {                          if (uploadFile != null)             {                 if (up

kwb690632917的博客 4393
上一篇: TreeView
下一篇: 主题/Master page/动态更改页面主题
mingzhecode
博客等级 码龄19年 13粉丝 42原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值