MusicGet 类_ASP教程-查字典教程网
MusicGet 类
MusicGet 类
发布时间:2016-12-29 来源:查字典编辑
摘要:复制代码代码如下:0thenselectcasencase0'左右都截取(都取前面)(去处关键字)GetContent=Right(str,...

复制代码 代码如下:

<%

Response.Expires=0

Response.expiresabsolute=Now()-1

Response.addHeader"pragma","no-cache"

Response.addHeader"cache-control","private"

Response.CacheControl="no-cache"

Response.Buffer=True

Response.Clear

Server.ScriptTimeOut=999999999

'***************************************************************

'*定义MusicGet类

'***************************************************************

ClassGetHttp

PrivateOXML,FSO,ADOS

PrivateSubClass_Initialize

SetOXML=server.CreateObject("Microsoft.XMLHTTP")

SetFSO=Server.CreateObject("Scripting.FileSystemObject")

SetADOS=Server.CreateObject("ADODB.Stream")

EndSub

PrivateSubClass_Terminate

SetOXML=Nothing

SetFSO=Nothing

SetADOS=Nothing

EndSub

PublicPropertyGetVersion

Version="动感采集系统v3.0"

EndProperty

'*****************************************************************

'function(私有)

'作用:利用流进行中文编码

'参数:vIn(要进行编码的字符患)

'*****************************************************************

PrivateFunctionBytesToBstr(body)

DimBdat

Bdat=Body

ADOS.Type=1

ADOS.Mode=3

ADOS.Open

ADOS.WriteBdat

ADOS.Position=0

ADOS.Type=2

ADOS.Charset="GB2312"

BytesToBstr=ADOS.ReadText

ADOS.Close

EndFunction

'*****************************************************************

'function(私有)

'作用:利用流保存文件

'参数:from(远程文件地址),tofile(保存文件位置)

'*****************************************************************

PrivateFunctionSaveFiles(byreffrom,byreftofile)

DimDatas

Datas=GetData(from,0)

Response.Write"保存成功:<fontcolor=red>"&formatnumber(len(Datas)/1024*2,2)&"</font>Kb"

response.Flush

ifformatnumber(len(Datas)/1024*2,2)>1then

ADOS.Type=1

ADOS.Mode=3

ADOS.Open

ADOS.writeDatas

ADOS.SaveToFileserver.mappath(tofile),2

ADOS.Close()

else

Response.Write"保存失败:<fontcolor=red>文件大小"&formatnumber(len(imgs)/1024*2,2)&"Kb,小于1K</font>"

response.Flush

endif

endfunction

'*****************************************************************

'function(私有)

'作用:利用fso检测文件是否存在,存在返回true,不存在返回false

'参数:filespes(文件位置)

'*****************************************************************

PrivateFunctionIsExists(byreffilespec)

If(FSO.FileExists(server.MapPath(filespec)))Then

IsExists=True

Else

IsExists=False

EndIf

EndFunction

'*****************************************************************

'function(私有)

'作用:利用fso检测文件夹是否存在,存在返回true,不存在返回false

'参数:folder(文件夹位置)

'*****************************************************************

PrivateFunctionIsFolder(byrefFolder)

IfFSO.FolderExists(server.MapPath(Folder))Then

IsFolder=True

Else

IsFolder=False

EndIf

EndFunction

'*****************************************************************

'function(私有)

'作用:利用fso创建文件夹

'参数:fldr(文件夹位置)

'*****************************************************************

PrivateFunctionCreateFolder(byreffldr)

Dimf

Setf=FSO.CreateFolder(Server.MapPath(fldr))

CreateFolder=f.Path

Setf=nothing

EndFunction

'*****************************************************************

'function(公有)

'作用:保存文件,并自动创建多级文件夹

'参数:fromurl(远程文件地址),tofiles(保存位置)

'*****************************************************************

PublicFunctionSaveData(byrefFromUrl,byrefToFiles)

ToFiles=trim(Replace(ToFiles,"//","/"))

flName=ToFiles

fldr=""

IfIsExists(flName)=falsethen

GetNewsFold=split(flName,"/")

Fori=0toUbound(GetNewsFold)-1

iffldr=""then

fldr=GetNewsFold(i)

else

fldr=fldr&""&GetNewsFold(i)

endif

IfIsFolder(fldr)=falsethen

CreateFolderfldr

Endif

Next

SaveFilesFromUrl,flName

Endif

Endfunction

'*****************************************************************

'function(公有)

'作用:取得远程数据

'参数:url(远程文件地址),getmode(模式:0为二进制,1为中文编码)

'*****************************************************************

PublicFunctionGetData(byrefurl,byrefGetMode)

'onerrorresumenext

SourceCode=OXML.open("GET",url,false)

OXML.send()

ifOXML.readystate<>4thenexitfunction

ifGetMode=0then

GetData=OXML.responseBody

else

GetData=BytesToBstr(OXML.responseBody)

endif

iferr.number<>0thenerr.Clear

EndFunction

'*****************************************************************

'function(公有)

'作用:格式化远程图片地址为本地位置

'参数:imgurl(远程图片地址),imgfolder(本地图片目录),fristname(加入的前缀名称)

'*****************************************************************

PublicFunctionFormatImgPath(byrefImgUrl,byrefImgFolder,byrefFristName,byrefnoimg)

strpath=""

ImgUrl=ImgUrl

ifinstr(ImgUrl,"Nophoto")orlenb(GetData(ImgUrl,0))<=0then

strpath=noimg

Response.Write"<ahref="&strpath&">"&strpath&"</a>"&vbcrlf

else

ifInstr(ImgUrl,".asp")then

strpath=FristName&"_"&Mid(ImgUrl,InStrRev(ImgUrl,"=")+1)&".jpg"

else

strpath=FristName&"_"&Mid(ImgUrl,InStrRev(ImgUrl,"/")+1)

endif

strpath=ImgFolder&"/"&strpath

strpath=Replace(strpath,"//","/")

ifleft(strpath,1)="/"thenstrpath=right(strpath,len(strpath)-1)

strpath=trim(strpath)

Response.Write"<ahref="&strpath&">"&strpath&"</a>"&vbcrlf

savedataImgUrl,strpath

endif

FormatImgPath=strpath

Endfunction

'*****************************************************************

'function(公有)

'作用:格式化远程音乐文件地址为本地位置

'参数:MusicUrl(远程文件地址),oServerUrl(原服务连接地址),MusicFolder(本地音乐文件目录)

'*****************************************************************

PublicFunctionFormatMusicPath(byrefMusicUrl,byrefoServerUrl,byrefMusicFolder)

strpath=""

strpath=Replace(MusicUrl,oServerUrl,"")

strpath=MusicFolder&"/"&strpath

strpath=Replace(strpath,"//","/")

ifleft(strpath,1)="/"thenstrpath=right(strpath,len(strpath)-1)

FormatMusicPath=trim(strpath)

Endfunction

'*****************************************************************

'function(公有)

'作用:格式化html

'*****************************************************************

PublicFunctionFormatHtml(Str,itype)

ifitype=0then

Str=replace(Str,chr(39),"")

Str=replace(Str,chr(34),""")

Str=replace(Str,"<","<")

Str=replace(Str,">",">")

else

Str=replace(Str,"chr(39)","")

Str=replace(Str,"chr(34)","")

endif

FormatHtml=Str

Endfunction

'*****************************************************************

'function(公有)

'作用:截取字符

'参数:str要操作的对像,start开始字符,last结束字符,n模式

'*****************************************************************

PublicFunctionGetContent(byrefstr,byrefstart,byreflast,byrefn)

IfInstr(lcase(str),lcase(start))>0then

selectcasen

case0'左右都截取(都取前面)(去处关键字)

GetContent=Right(str,Len(str)-Instr(lcase(str),lcase(start))-Len(start)+1)

GetContent=Left(GetContent,Instr(lcase(GetContent),lcase(last))-1)

case1'左右都截取(都取前面)(保留关键字)

GetContent=Right(str,Len(str)-Instr(lcase(str),lcase(start))+1)

GetContent=Left(GetContent,Instr(lcase(GetContent),lcase(last))+Len(last)-1)

case2'只往右截取(取前面的)(去除关键字)

GetContent=Right(str,Len(str)-Instr(lcase(str),lcase(start))-Len(start)+1)

case3'只往右截取(取前面的)(包含关键字)

GetContent=Right(str,Len(str)-Instr(lcase(str),lcase(start))+1)

case4'只往左截取(取后面的)(包含关键字)

GetContent=Left(str,InstrRev(lcase(str),lcase(start))+Len(start)-1)

case5'只往左截取(取后面的)(去除关键字)

GetContent=Left(str,InstrRev(lcase(str),lcase(start))-1)

case6'只往左截取(取前面的)(包含关键字)

GetContent=Left(str,Instr(lcase(str),lcase(start))+Len(start)-1)

case7'只往右截取(取后面的)(包含关键字)

GetContent=Right(str,Len(str)-InstrRev(lcase(str),lcase(start))+1)

case8'只往左截取(取前面的)(去除关键字)

GetContent=Left(str,Instr(lcase(str),lcase(start))-1)

case9'只往右截取(取后面的)(包含关键字)

GetContent=Right(str,Len(str)-InstrRev(lcase(str),lcase(start)))

endselect

Else

GetContent=""

Endif

Endfunction

'*****************************************************************

'function(公有)

'作用:取得字符的拼音

'*****************************************************************

PublicFunctionGetPyChar(byrefChar)

tmp=65536+asc(Char)

if(tmp>=45217andtmp<=45252)or(tmp=65601)or(tmp=65633)or(tmp=37083)then

GetPyChar="A"

elseif(tmp>=45253andtmp<=45760)or(tmp=65602)or(tmp=65634)or(tmp=39658)then

GetPyChar="B"

elseif(tmp>=45761andtmp<=46317)or(tmp=65603)or(tmp=65635)or(tmp=33405)then

GetPyChar="C"

elseif(tmp>=46318andtmp<=46930)or(tmp>=61884andtmp<=61884)or(tmp=65604)or(tmp>=36820andtmp<=38524)or(tmp=65636)then

GetPyChar="D"

elseif(tmp>=46931andtmp<=47009)or(tmp=65605)or(tmp=65637)or(tmp=61513)then

GetPyChar="E"

elseif(tmp>=47010andtmp<=47296)or(tmp=65606)or(tmp=65638)or(tmp=61320)or(tmp=63568)or(tmp=36281)then

GetPyChar="F"

elseif(tmp>=47297andtmp<=47613)or(tmp=65607)or(tmp=65639)or(tmp=35949)or(tmp=36089)or(tmp=36694)or(tmp=34808)then

GetPyChar="G"

elseif(tmp>=47614andtmp<=48118)or(tmp>=59112andtmp<=59112)or(tmp=65608)or(tmp=65640)then

GetPyChar="H"

elseif(tmp=65641)or(tmp=65609)or(tmp=65641)then

GetPyChar="I"

elseif(tmp>=48119andtmp<=49061andtmp<>48739)or(tmp>=62430andtmp<=62430)or(tmp=65610)or(tmp=65642)or(tmp=39048)then

GetPyChar="J"

elseif(tmp>=49062andtmp<=49323)or(tmp=65611)or(tmp=65643)then

GetPyChar="K"

elseif(tmp>=49324andtmp<=49895)or(tmp>=58838andtmp<=58838)or(tmp=65612)or(tmp=65644)or(tmp=62418)or(tmp=48739)then

GetPyChar="L"

elseif(tmp>=49896andtmp<=50370)or(tmp=65613)or(tmp=65645)then

GetPyChar="M"

elseif(tmp>=50371andtmp<=50613)or(tmp=65614)or(tmp=65646)then

GetPyChar="N"

elseif(tmp>=50614andtmp<=50621)or(tmp=65615)or(tmp=65647)then

GetPyChar="O"

elseif(tmp>=50622andtmp<=50905)or(tmp=65616)or(tmp=65648)then

GetPyChar="P"

elseif(tmp>=50906andtmp<=51386)or(tmp>=62659andtmp<=63172)or(tmp=65617)or(tmp=65649)then

GetPyChar="Q"

elseif(tmp>=51387andtmp<=51445)or(tmp=65618)or(tmp=65650)then

GetPyChar="R"

elseif(tmp>=51446andtmp<=52217)or(tmp=65619)or(tmp=65651)or(tmp=34009)then

GetPyChar="S"

elseif(tmp>=52218andtmp<=52697)or(tmp=65620)or(tmp=65652)then

GetPyChar="T"

elseif(tmp=65621)or(tmp=65653)then

GetPyChar="U"

elseif(tmp=65622)or(tmp=65654)then

GetPyChar="V"

elseif(tmp>=52698andtmp<=52979)or(tmp=65623)or(tmp=65655)then

GetPyChar="W"

elseif(tmp>=52980andtmp<=53688)or(tmp=65624)or(tmp=65656)then

GetPyChar="X"

elseif(tmp>=53689andtmp<=54480)or(tmp=65625)or(tmp=65657)then

GetPyChar="Y"

elseif(tmp>=54481andtmp<=62383andtmp<>59112andtmp<>58838)or(tmp=65626)or(tmp=65658)or(tmp=38395)or(tmp=39783)then

GetPyChar="Z"

elseif(tmp=65584)then

GetPyChar="0-9"

elseif(tmp=65585)then

GetPyChar="0-9"

elseif(tmp=65586)then

GetPyChar="0-9"

elseif(tmp=65587)then

GetPyChar="0-9"

elseif(tmp=65588)then

GetPyChar="0-9"

elseif(tmp=65589)then

GetPyChar="0-9"

elseif(tmp=65590)then

GetPyChar="0-9"

elseif(tmp=65591)then

GetPyChar="0-9"

elseif(tmp=65592)then

GetPyChar="0-9"

elseif(tmp=65593)then

GetPyChar="0-9"

else

GetPyChar="0-9"

endif

endfunction

'*****************************************************************

'function(公有)

'作用:循环取得字符串的拼音

'*****************************************************************

PublicFunctionGetPy(byrefStr)

fori=1tolen(Str)

GetPy=GetPy&GetPyChar(mid(Str,i,1))

next

endfunction

'*****************************************************************

'function(公有)

'作用:取得歌曲歌词

'*****************************************************************

PublicFunctionLrcMusicGc(MusicName,singer)

musicGc=Getdata("http://mp3.baidu.com/m?tn=baidump3lyric&ct=150994944&word="&musicname&"%20"&singer,1)

ifinstr(musicgc,"建议您检查输入文字有无错误")then

MusicGc="暂无"

else

musicGc=FormatHtml(musicgc,0)

musicGc=GetContent(musicgc,"专辑:<ahref="http://mp3.baidu.com/m?tn=baidump3&ct=134217728&lm=-1&word=","<palign=right>",0)

musicgc=Replace(musicgc,"<","<")

musicgc=Replace(musicgc,">",">")

musicgc=Replace(musicgc,"","")

musicgc=Replace(musicgc,"<fontstyle=color:#e10900>","")

musicgc=Replace(musicgc,"</font>","")

musicgc=GetContent(musicgc,"<p>","</p>",0)

'response.writemusicGc

endif

ifmusicgc=""then

LrcMusicgc="暂无"

else

LrcMusicgc=MusicGc

endif

Endfunction

EndClass

%>

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新ASP教程学习
    热门ASP教程学习
    编程开发子分类