ASP要怎么获取上传的二进制数据,然后保存成图片文件!
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ASP要怎么获取上传的二进制数据,然后保存成图片文件!相关的知识,希望对你有一定的参考价值。
php通过file_get_contents("php://input")来获取上传的二进制数据,再使用 file_put_contents(SD_ROOT.'./'.$new_avatar_path,file_get_contents("php://input")); 就可以写入目录文件内容
ASP要怎么获取上传的二进制数据,然后保存成图片文件!
一楼的看清楚问题哈:然后保存成图片文件!不是要存到数据库。是要保存成图片文件存到文件夹的
<%
response.buffer=true
formsize=request.totalbytes
formdata=request.binaryread(formsize)
bncrlf=chrB(13) & chrB(10)
divider=leftB(formdata,clng(instrb(formdata,bncrlf))-1)
datastart=instrb(formdata,bncrlf & bncrlf)+4
dataend=instrb(datastart+1,formdata,divider)-datastart
mydata=midb(formdata,datastart,dataend)
set connGraph=server.CreateObject("ADODB.connection")
connGraph.ConnectionString="driver=Microsoft Access Driver (*.mdb);DBQ=" & server.MapPath("images.mdb") & ";uid=;PWD=;"
connGraph.Open
set rec=server.createobject("ADODB.recordset")
rec.Open "SELECT * FROM aa where id is null",connGraph,1,3
rec.addnew
rec("img").appendchunk mydata
rec.update
rec.close
set rec=nothing
set connGraph=nothing
%>
这是显示代码
<html>
<body>
<center>
<form name="mainForm" enctype="multipart/form-data" action="a1.asp" method=post>
<input type=file name=mefile><br>
<input type=submit name=ok value="OK">
</form>
</center>
</body>
</html>
引用的时候直接这样引用
<input type="image" name="imageField" id="imageField" src="showimg.asp?id=1" /> 参考技术A 以下是写入代码
<%
response.buffer=true
formsize=request.totalbytes
formdata=request.binaryread(formsize)
bncrlf=chrB(13)
&
chrB(10)
divider=leftB(formdata,clng(instrb(formdata,bncrlf))-1)
datastart=instrb(formdata,bncrlf
&
bncrlf)+4
dataend=instrb(datastart+1,formdata,divider)-datastart
mydata=midb(formdata,datastart,dataend)
set
connGraph=server.CreateObject("ADODB.connection")
connGraph.ConnectionString="driver=Microsoft
Access
Driver
(*.mdb);DBQ="
&
server.MapPath("images.mdb")
&
";uid=;PWD=;"
connGraph.Open
set
rec=server.createobject("ADODB.recordset")
rec.Open
"SELECT
*
FROM
aa
where
id
is
null",connGraph,1,3
rec.addnew
rec("img").appendchunk
mydata
rec.update
rec.close
set
rec=nothing
set
connGraph=nothing
%>
这是显示代码
<html>
<body>
<center>
<form
name="mainForm"
enctype="multipart/form-data"
action="a1.asp"
method=post>
<input
type=file
name=mefile><br>
<input
type=submit
name=ok
value="OK">
</form>
</center>
</body>
</html>
引用的时候直接这样引用
<input
type="image"
name="imageField"
id="imageField"
src="showimg.asp?id=1"
/> 参考技术B 使用无组件上传类,或者使用组件也可以。
这些网上都可以找到。
ASP.NET利用.FileUpload上传图片并将图片名称保存到数据库,我要具体的代码
参考技术A 放一个fileupload控件,另外放一个button按钮,控制上传,在button的click事件中写:if(fileupload.hasfile) //判断是否存在文件
string FilePath = Server.MapPath("/UploadFile/"); //获取图像存的路径
string Extension = Path.GetExtension(fileupload.PostedFile.FileName); //获取文件的类型
if(extension != ".jpg") //判断是不是jpg格式,需要其他格式多加几个或者用字符处理方式都行
return ;
string NewFilePath = DateTime.Now.ToString("yyyyMMddHHmmss") + Extension; //重命名图片,也可以用图片原有的名字
fileupload.SaveAs(FilePath + NewFilePath); //图片存到对应路径
string ImgPath = "/UploadFile/" + NewFilePath; //获取上传好的图片的路径
//将字符串存入数据库对应的字段即可
追问
写的很好,有没有可以判断图片上传不能超过多少MB的?
追答在webconfig里面可以设置全局的大小,字节的话,你用限制的大小换算一下
不加这个得话,默认是4M
另外也可以再代码里面判断
HttpPostedFile upFile = fileupload.PostedFile;
int fileLength = upFile.ContentLength;
但是大小不能超过在webconfig里面设置的
原来是大神,遇到不懂的还可以问你么?
追答算不上大神,一起学习,有不懂的可以一起探讨探讨
本回答被提问者采纳以上是关于ASP要怎么获取上传的二进制数据,然后保存成图片文件!的主要内容,如果未能解决你的问题,请参考以下文章
asp.net怎么将图片上传到sql2005里,然后显示在网页里做成变换的新闻图片