asp中将网页上的图片保存到服务器(怎么将网页图片保存为文件)
- 服务器
- 2022-12-20 14:10:08
- 21
今天给各位分享asp中将网页上的图片保存到服务器的知识,其中也会对怎么将网页图片保存为文件进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、ASP实现图片保存
- 2、asp将二进制数据流保存成图片文件到服务器
- 3、asp 在复制文章到自己的网站时怎样让图片自动下载到本地?急求,有能够解决者追加我所有积分
- 4、asp.net后台中用什么方法可以将图片传到服务端?
- 5、asp.net 如何抓取网页图片并保存???
- 6、ASP.NET中如何上传图片到服务器所制定的一个文件夹中去?
ASP实现图片保存
代码如下:
很简单的,自己修改一下局部就OK了
/uploadx.asp
% Dim FormData, FormSize, Divider, bCrLf
FormSize = Request.TotalBytes
FormData = Request.BinaryRead(FormSize)
bCrLf = ChrB(13) ChrB(10)
Divider = LeftB(FormData, InStrB(FormData, bCrLf) - 1)
'将上传的文件保存到path所指定的目录下面。
'Formfield 上传表单的"file"域名 Path
' 要保存文件的服务器绝对路径,形式为:"d:\path\subpath"或"d:\path\subpath\"
'MaxSize 限制上传文件的最大长度,以KByte为单位
' SavType 服务器保存文件的方式:
'0 唯一文件名方式,如果有同名则自动改名;
'1 报错方式,如果有同名则出错;
'2 覆盖方式,如果有同名则覆盖原来的文件
Function SaveFile(FormFileField, Path, MaxSize, SavType)
Dim StreamObj,StreamObj1
Set StreamObj = Server.CreateObject("ADODB.Stream")
Set StreamObj1 = Server.CreateObject("ADODB.Stream")
StreamObj.Mode = 3
StreamObj1.Mode = 3
StreamObj.Type = 1
StreamObj1.Type = 1
SaveFile = ""
StartPos = LenB(Divider) + 2
FormFileField = Chr(34) FormFileField Chr(34)
If Right(Path,1) "\" Then
Path = Path "\"
End If
Do While StartPos 0
strlen = InStrB(StartPos, FormData, bCrLf) - StartPos
SearchStr = MidB(FormData, StartPos, strlen)
If InStr(bin2str(SearchStr), FormFileField) 0 Then
FileName = bin2str(GetFileName(SearchStr,path,SavType))
If FileName "" Then
FileStart = InStrB(StartPos, FormData, bCrLf bCrLf) + 4
FileLen = InStrB(StartPos, FormData, Divider) - 2 - FileStart
If FileLen = MaxSize*1024 Then
FileContent = MidB(FormData, FileStart, FileLen)
StreamObj.Open
StreamObj1.Open
StreamObj.Write FormData
StreamObj.Position=FileStart-1
StreamObj.CopyTo StreamObj1,FileLen
If SavType =0 Then
SavType = 1
End If
StreamObj1.SaveToFile Path FileName, SavType
StreamObj.Close
StreamObj1.Close
If SaveFile "" Then
SaveFile = SaveFile "," FileName
Else
SaveFile = FileName
End If
Else
If SaveFile "" Then
SaveFile = SaveFile ",*TooBig*"
Else
SaveFile = "*TooBig*"
End If
End If
End If
End If
If InStrB(StartPos, FormData, Divider) 1 Then
Exit Do
End If
StartPos = InStrB(StartPos, FormData, Divider) + LenB(Divider) + 2
Loop
End Function
'获取表单值
Function GetFormVal(FormName)
GetFormVal = ""
StartPos = LenB(Divider) + 2
FormName = Chr(34) FormName Chr(34)
Do While StartPos 0
strlen = InStrB(StartPos, FormData, bCrLf) - StartPos
SearchStr = MidB(FormData, StartPos, strlen)
If InStr(bin2str(SearchStr), FormName) 0 Then
ValStart = InStrB(StartPos, FormData, bCrLf bCrLf) + 4
ValLen = InStrB(StartPos, FormData, Divider) - 2 - ValStart
ValContent = MidB(FormData, ValStart, ValLen)
If GetFormVal "" Then
GetFormVal = GetFormVal "," bin2str(ValContent)
Else
GetFormVal = bin2str(ValContent)
End If
End If
If InStrB(StartPos, FormData, Divider) 1 Then
Exit Do
End If
StartPos = InStrB(StartPos, FormData, Divider) + LenB(Divider) + 2
Loop
End Function
Function bin2str(binstr)
Dim varlen, clow, ccc, skipflag
skipflag = 0
ccc = ""
varlen = LenB(binstr)
For i = 1 To varlen
If skipflag = 0 Then
clow = MidB(binstr, i, 1)
If AscB(clow) 127 Then
ccc = ccc Chr(AscW(MidB(binstr, i + 1, 1) clow))
skipflag = 1
Else
ccc = ccc Chr(AscB(clow))
End If
Else
skipflag = 0
End If
Next
bin2str = ccc
End Function
Function str2bin(str)
For i = 1 To Len(str)
str2bin = str2bin ChrB(Asc(Mid(str, i, 1)))
Next
End Function
Function GetFileName(str,path,savtype)
Set fs = Server.CreateObject("Scripting.FileSystemObject")
str = RightB(str,LenB(str)-InstrB(str,str2bin("filename="))-9)
GetFileName = ""
FileName = ""
For i = LenB(str) To 1 Step -1
If MidB(str, i, 1) = ChrB(Asc("\")) Then
FileName = MidB(str, i + 1, LenB(str) - i - 1)
Exit For
End If
Next
If savtype = 0 and fs.FileExists(path bin2str(FileName)) = True Then
hFileName = FileName
rFileName = ""
For i = LenB(FileName) To 1 Step -1
If MidB(FileName, i, 1) = ChrB(Asc(".")) Then
hFileName = LeftB(FileName, i-1)
rFileName = RightB(FileName, LenB(FileName)-i+1)
Exit For
End If
Next
For i = 0 to 9999
hFileName = hFileName str2bin(i)
If fs.FileExists(path bin2str(hFileName) i bin2str(rFileName)) = False Then
FileName = hFileName str2bin(i) rFileName
Exit For
End If
Next
End If
Set fs = Nothing
GetFileName = FileName
End Function
%
asp将二进制数据流保存成图片文件到服务器
动作分解
1.将文件转成二进制流
2.接收二进制流数据
3.二进制流数据转成图片文件
4.将文件存在到服务器
通过几上四个步骤的关键字baidu就可以找到答案了。
不过有一点。如果服务器有数据库的话,而且图片不大的话,可以直接将二进制流写入数据库中
asp 在复制文章到自己的网站时怎样让图片自动下载到本地?急求,有能够解决者追加我所有积分
你要换个思维方式:
复制过来的时候其实只是复制了图片的URL路径,在保存的时候用程序去匹配所有图片路径如果是站外的路径,则下载到服务器上,并更换成自己的路径,这种叫远程保存图片,你可以百度搜下,这方面fckeditor有人写这方面的插件集成了这一功能。你自己研究的话,就搜索“远程保存图片”,快过年了,多陪陪家人吧,别折腾了。
asp.net后台中用什么方法可以将图片传到服务端?
要使用file类中的copy方法,是先要把文件弄到服务器端,在服务器商进行文件复制的,现在 你还没有弄到服务器端,所以没有办法复制。所以得先上传到服务器,参考一下:ASP.NET中上传下载文件
//检查上传文件不为空
if(File1.PostedFile!=null)
{
string nam = File1.PostedFile.FileName ;
//取得文件名(抱括路径)里最后一个"."的索引
int i= nam.LastIndexOf(".");
//取得文件扩展名
string newext =nam.Substring(i);
//这里我自动根据日期和文件大小不同为文件命名,确保文件名不重复
DateTime now = DateTime.Now;
string newname=now.DayOfYear.ToString()+File1.PostedFile.ContentLength.ToString();
//保存文件到你所要的目录,这里是IIS根目录下的upload目录.你能改动.
//注意: 我这里用Server.MapPath()取当前文件的绝对目录.在asp.net里""必须用""代替
File1.PostedFile.SaveAs(Server.MapPath("upload"+newname+newext));
this.HyperLink1.NavigateUrl ="upload"+newname+newext;
//得到这个文件的相关属性:文件名,文件类型,文件大小
//fname.Text=File1.PostedFile.FileName;
//fenc.Text=File1.PostedFile.ContentType ;
//fsize.Text=File1.PostedFile.ContentLength.ToString();
}
本文转自好看奇文网:
asp.net 如何抓取网页图片并保存???
先把html请求回来,然后用正则表达式寻找里面的img标签的路径,然后用程序遍历图片集并保持到你的服务器上面。
ASP.NET中如何上传图片到服务器所制定的一个文件夹中去?
首先你要引入:
using System.Io;
string savepath=Server.MapPath("~/你要指定的文件夹");
然后用 save(savepath+"你要把它保存的文件名.扩展名");
就可以了.
asp中将网页上的图片保存到服务器的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于怎么将网页图片保存为文件、asp中将网页上的图片保存到服务器的信息别忘了在本站进行查找喔。
本文由admin于2022-12-20发表在靑年PHP官网,如有疑问,请联系我们。
本文链接:https://www.qnphp.com/post/200837.html