用FSO获取图片文件(大小、宽度、高)的信息
<::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
''':bmp、GIF、JPG和PNG::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
' ':::
:::这个函数从任意一个字节中获得指定的字节数::
:::从偏移量开始的文件(基1)::
' ':::
通过::::
':拉腊米堡国家纪念碑= > filespec文件读取:::
开始读取>偏移的偏移量:::
>字节:要读取多少字节:::
' ':::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
功能getBytes(拉腊米堡国家纪念碑,偏移量,以字节为单位)
昏暗的objfso
昏暗的objftemp
昏暗的objtextstream
昏暗的lngsize
下次继续出错
集objfso = CreateObject(脚本。FileSystemObject )
'首先,我们得到的文件大小
集objftemp = objfso.getfile(拉腊米堡国家纪念碑)
lngsize = objftemp大小。
集objftemp =没有
fsoforreading = 1
集objtextstream = objfso.opentextfile(拉腊米堡国家纪念碑,fsoforreading)
如果偏移量大于0,那么
strbuff = objtextstream读(偏移量1)。
最后如果
如果字节=1,则全部!
其中,objtextstream。读(lngsize)''readall
其他的
其中,objtextstream读(字节)。
最后如果
objtextstream。关闭
集objtextstream =没有
集objfso =没有
端功能
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
' ':::
::::将两个字节转换为数字值的函数(long)::
':':(都是little-endian和big-endian)::
' ':::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
功能lngconvert(strtemp)
lngconvert = CLNG(ASC(左(strtemp,1))+((ASC(右(strtemp,1))×256 )))))
端功能
功能lngconvert2(strtemp)
lngconvert2 = CLNG(ASC(右(strtemp,1))+((ASC(左(strtemp,1))×256 )))))
端功能
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
' ':::
答::这个功能完成大部分实际工作。它会尝试::
::::读取任何文件,不管扩展名和::
''':确定它是否是图形图像。::
' ':::
通过::::
':拉腊米堡国家纪念碑= > filespec文件读取:::
宽度:图像宽度:::
高度=图像的高度:::
深度>颜色深度(颜色数):::
':':strimagetype = >类型的图像(如GIF,BMP等)::
' ':::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
功能gfxspex(拉腊米堡国家纪念碑,宽度,高度,深度,strimagetype)
昏暗的strpng
昏暗的strgif
昏暗的strbmp
昏暗的strtype
strtype =
strimagetype =(未知)。
gfxspex = false
strpng = CHR(137)CHR(80)CHR(78)
strgif =GIF
strbmp = CHR CHR(77)(66)
strtype = getBytes(拉腊米堡国家纪念碑,0, 3)
如果strtype = strgif ' '是GIF
strimagetype =GIF
宽度= lngconvert(getBytes(拉腊米堡国家纪念碑,7, 2))
高度= lngconvert(getBytes(拉腊米堡国家纪念碑,9, 2))
深度= 2 ^((ASC(getBytes(拉腊米堡国家纪念碑,11, 1)),7)+ 1)
gfxspex =真
左(strtype,2)= strbmp ' '是BMP
strimagetype =BMP
宽度= lngconvert(getBytes(拉腊米堡国家纪念碑,19, 2))
高度= lngconvert(getBytes(拉腊米堡国家纪念碑,23, 2))
深度= 2 ^(ASC(getBytes(拉腊米堡国家纪念碑,29, 1)))
gfxspex =真
strtype = strpng ' '是PNG
strimagetype =PNG
宽度= lngconvert2(getBytes(拉腊米堡国家纪念碑,19, 2))
高度= lngconvert2(getBytes(拉腊米堡国家纪念碑,23, 2))
深度= getBytes(拉腊米堡国家纪念碑,25, 2)
选择案例ASC(右(深度,1))
案例0
深度= 2×(ASC(左(1,深)))
gfxspex =真
案例2
深度= 2×(ASC(左(深度,1))* 3)
gfxspex =真
案例3
深度= 2 ^(ASC(左(深度,1)))8
gfxspex =真
案例4
深度= 2×(ASC(左(深度,1))* 2)
gfxspex =真
案例6
深度= 2×(ASC(左(深度,1))* 4)
gfxspex =真
其他案件
深度= 1
最后选择
其他的
strbuff = getBytes(拉腊米堡国家纪念碑,0,1)从文件中的所有字节
lngsize = Len(strbuff)
flgfound = 0
strtarget = CHR(255)CHR(216)CHR(255)
flgfound =仪器(strbuff,strtarget)
如果flgfound = 0
退出功能
最后如果
strimagetype =JPG
lngpos = flgfound + 2
exitloop = false
而exitloop =虚假和lngpos < lngsize
而ASC(MID(strbuff,lngpos,1))= 255和lngpos < lngsize
lngpos = lngpos + 1
环
如果ASC(MID(strbuff,lngpos,1))195
lngmarkersize = lngconvert2(MID(strbuff,lngpos + 1, 2))
lngpos = lngpos + lngmarkersize + 1
其他的
exitloop =真
最后如果
环
'
如果ExitLoop = false
宽度= 1
身高= 1
深度= 1
其他的
高度= lngconvert2(MID(strbuff,lngpos + 4, 2))
宽度= lngconvert2(MID(strbuff,lngpos + 6, 2))
深度= 2 ^(ASC(MID(strbuff,lngpos + 8, 1))* 8)
gfxspex =真
最后如果
最后如果
端功能
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
测试:线束::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
'测试,我们将尝试显示所有文件.gif
集objfso = CreateObject(脚本。FileSystemObject )
集objf = objfso.getfolder(C:)
objfc = objf文件集。
response.write
在objfc F1
如果仪器(ucase(F1。名字),GIF)然后
响应。写f1.name F1。datecreated 大小的F1。
如果gfxspex(f1.path,W,H,C,strtype)=真
response.write WXHC颜色
其他的
response.write
最后如果
response.write
最后如果
下一个
response.write
集objfc =没有
集objf =没有
集objfso =没有
%>