asp如何批量获取一个文件夹下所有文件的文件名然后存入数据库

asp如何批量获取一个文件夹下所有文件的文件名然后存入数据库,第1张

用ADIR函数

文件信息存放到数组中,然后返回文件个数。

语法

ADIR(ArrayName [, cFileSkeleton [, cAttribute ]])

参数

ArrayName

指定数组名。如果数组不存在,Visual FoxPro 将自动创建此数组。如果数组存在,但其大小不足以包含所有信息,则 Visual FoxPro 自动增加数组大小,使得数组能容纳所有信息。如果数组超过了所需大小,Visual FoxPro 将截掉多余部分。如果数组存在,并且 ADIR( )

函数由于没找到匹配文件而返回 0,则数组保持不变。如果数组不存在,并且 ADIR( ) 函数返回零,则不创建数组。

下表说明了数组中每列的内容及其数据类型:

列 数组内容 数值类型

1 文件名 字符型

2 文件大小 数值型

3 文件日期 日期型

4 文件时间 字符型

5 文衡困件属性 字符型

数组的皮瞎最后一列包含匹配文件的文件属性。每个文件属性值由一个字母表示,一个文件可有多个属性。下表说明每个字母表示的文件属性含义:

字母 属性

A 档案文件 一 可读写(在 FoxPro for Macintosh 中,此属性无效)

H 隐藏文件

R 只读文件

S 系统文件

D 目录或文件夹

cFileSkeleton

指定文件梗概,以便存储满足搜索条件的文件名或扩展名的文件信息。例如,条件可以是所有表、所有文本文件、所有文件名第一个字母为“A”的文件,等等。这些通配查询在 cFileSkeleton 中可以包含通配符 * 和 ?。其中问号代表单个字符,星号代表任意字符串。在文件梗概中,可在任意位置使用任意个数的通配符。

在 Visual FoxPro、FoxPro for Windows 和 FoxPro for MS-DOS 中,可以指定驱动器和目录名,程序将在此驱动器和目录下搜索匹配文件。如果不指定驱动器和目录名燃拦空,将把当前目录下的文件信息存入数组中。

在 FoxPro for Macintosh 中,可以搜索匹配文件名的卷和文件夹。如果不指定卷和文件夹,FoxPro for Macintosh 将当前文件夹中的文件信息存入数组中。

cAttribute

指定在返回内容中包含子目录或嵌套文件夹、隐藏或系统文件、或者卷名。

cAttribute 可以是 D、H 和 S 的任意组合。如果包含 D,除了返回匹配 cFileSkeleton 的文件名外,还将返回当前目录的子目录或当前文件夹的嵌套文件夹。如果包含 H,将返回与 cFileSkeleton 指定相匹配的隐藏文件信息。如果包含 S,将返回与 cFileSkeleton 指定通配文件名相匹配的系统文件信息。

如果 cFileSkeleton 为空字符串,仅返回子目录或嵌套文件夹名、隐藏或系统文件。

cAttribute 参数中包含字符 V,将返回当前驱动器的卷名。如果 V 和 D、H 或 S 一起包含在数组中,则只返回卷名。卷名存入数组的第一个元素中,并截去数组的其余部分。

返回值类型

数值型

说明

对于每一个文件,ADIR( ) 将文件名、大小、日期、时间和属性信息存入数组。

例子:

=adir(abc,"d:\123\*.jpg")

把d:\123文件夹下jpg照片文件的名字、大小、日期、时间和属性信息存入数组abc

刚写完代码问题关闭了, 没把我晕死.

你看一看吧 不懂可以问我.

========================================================================

没有时间把整站代码都写给你

大概说下思路吧

1,遍历文件夹取文件对象值,添加迅御在数据库中(先建好表方便一些),然后 *** 作Drive对象,取数据库值取表格值或输入值都可以,假设要复制文件夹中所有文件的话就直接在遍历循环中建FSO对象,不过代码复杂一点.

祝你成功.

给你一些主要functions和思路,你会发现其实点破了就很简单:

1.

function bianli(path)

Set fso = Server.CreateObject("Scripting.FileSystemObject")

on error resume next

Set objFolder=fso.GetFolder(server.MapPath(path))

Set objFiles=objFolder.Files

'循环输出文件夹path下的文件的文件名

For each objFile in objFiles '取相关值

Response.Write "Name: " &objFile.Name &" "

Response.Write "ShortName: " &objFile.ShortName &" "

Response.Write "Size: " &objFile.Size &" bytes "

Response.Write "Type: " &objFile.Type &"<BR>"

Response.Write "Path: " &objFile.Path &" "

Response.Write "ShortPath: " &objFile.ShortPath &"<BR>"

Response.Write "Created: " &objFile.DateCreated &" "

Response.Write "LastModified: " &objFile.DateLastModified &"<P>"

Next

Set objFolder=nothing

Set fso=nothing '释放对象

end function

下面的建表写表就不用我说了吧?

==========================================================================

2.文件复制 *** 作'之讲了复制,下面有详细关于File对象的讲解,希望触类旁通

Sub backupdata()

Filepath=request.form("Filepath")

Filepath=server.mappath(Filepath)

bkfolder=request.form("bkfolder")

bkfilename=request.form("bkfilename")

Set Fso=server.createobject("scripting.filesystemobject")

if fso.fileexists(Filepath) then

If CheckDir(bkfolder) = True Then

fso.copyfile Filepath,bkfolder&"\"&bkfilename

else

MakeNewsDir bkfolder

fso.copyfile Filepath,bkfolder&"\"&bkfilename

end if

response.write " *** 作成功,您备份的数据路径为<br>" &bkfolder&"\"&bkfilename

Else

response.write "找不到您所需要备份的文件。"

End if

end sub

Driver对象的RootFolder属性返回一个Folder对象,通过该对象可访问这个驱动器内的所有的内容。可以使用这个Folder对象的属性和方法遍历驱动器上的目录,并得到该文件夹和其他文件夹的属性。

Copy(destination,overwrite)

将这个文件复制到destination指定的文件夹。如果destination的末尾是路径分隔符(‘\’),那么认为亩大岩destination是放置拷贝文件的文件夹。否则认为destination是要仿迹创建的新文件的路径和名字。如果目标文件已经存在且overwrite参数设置为False,将产生错误,缺省的overwrite参数是True

Delete(force)

删除这个文件。如果可选的force参数设置为True,即使文件具有只读属性也会被删除。缺省的force是False

Move(destination)

将文件移动到destination指定的文件夹。如果destination的末尾是路径分隔符(‘\’),那么认为destination是一文件夹。否则认为destination是一个新的文件的路径和名字。如果目标文件夹已经存在,则出错

CreateTextFile

(filename,overwrite,unicode)

用指定的文件名创建一个新的文本文件,并且返回一个相应的TextStream对象。如果可选的overwrite参数设置为True,将覆盖任何已有的同名文件。缺省的overwrite参数是False。如果可选的unicode参数设置为True,文件的内容将存储为unicode文本。缺省的unicode是False

OpenAsTextStream

(iomode,format)

打开指定文件并且返回一个TextStream对象,用于文件的读、写或追加。iomode参数指定了要求的访问类型,允许值是ForReading(1) (缺省值)、ForWrite(2)、ForAppending(8)。format参数说明了读、写文件的数据格式。允许值是TristateFalse(0)(缺省),说明用ASCII数据格式;TristateTrue(-1)说明用Unicode数据格式;TristateUseDefault(-2)说明使用系统缺省格式

不是为了多少分 主要能帮到你就可以

asp获取文件名和扩展名的函数代码

<%

function

getfilename(text)

text

=

left(text,instrrev(fl,".")-1)

getfilename

=

text

end

function

function

getextn(text)

text

=

left(text,instr(text,".")-1)

getextn

=

text

end

function

%>

这样就可以了,获得就是

.扩展名

<%

lname="文本字段名字"

la=split(lname,"/")

num=ubound(la)

lb=split(la(num),".")

num2=ubound(lb)

response.write("."&lb(num2))

%>

这样获得的是整个文件名明咐

<%

a="c:/windows/windows/陆冲windows/tex.txt"

b=split(a,"激悉纯/")

a=ubound(b)

response.write(b(a))

%>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8174840.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存