网站建设| 数据库类| 图形图象| 程序设计| 现代办公| 操作系统| 考试认证| 网络技术| 软件工程| 电脑相关| 文学作品
网站开发| 网页制作| 操作系统| 图象图形| 考试认证| 数据库类| 程序设计| 硬件技术| 现代办公| 网络技术| 笑话频道
 
您的位置: 电脑书库首页-> 电脑文摘-> 网站开发-> ASP/ASP.NET-> 使用FSO把文本信息导入数据库

使用FSO把文本信息导入数据库
作者:佚名 来源:InterNet 加入时间:2005-3-4
相关文章
  • FSO实例
  • 一个实用的FSO-实时统计在线人数
  • FSO操作示例(给初学者)
  • 如何使用FSO搜索硬盘文件
  • 利用FSO取得BMP,JPG,PNG,GIF文件信息
  • 三种禁用FSO组件的方法
  • FSO的一些特殊功能
  • 使用FSO按文件大小浏览文件目录并进行删除操作
  • NAV导致IIS调用FSO失败的解决方法
  • 构建免受FSO威胁虚拟主机
  • 相关书籍:
    在开发WEB应用程序中,我们经常需要对文件系统中的驱动器、文件夹和文件进行处理,比如收集驱动器的相关信息;创建、添加、移动或删除文件夹和文件等。在VB6中新提供了一套称为FSO(File System Object)对象模型来对文件系统进行访问处理。该模型提供了一个基于对象的工具,通过它所提供的一系列属性和方法,我们可以在应用程序中更简单、灵活地对文件系统进行各种操作。
       一、FSO简介
       FSO对象模型包含以下几种对象:
       Drive对象:允许收集系统物理或通过LAN与系统逻辑连接的硬盘、CD-ROM等驱动器的可用空间、共享名等信息。
       Folder对象:允许创建、删除或移动文件夹,并向系统查询文件夹的名称、路径等。
       Files对象:允许创建、删除或移动文件,并向系统查询文件的名称、路径等。
       TextStream对象:允许创建和读写文本文件。
       FileSystemObject对象:提供一整套用于驱动器、文件夹和文件操作的方法,在功能上可以把它看作是上面几个对象的集合并且经常与它们配合使用。与该对象相关联的很多方法重复了前面四个对象中的方法,因此我们既可以通过FileSystemObject对象来对驱动器、文件夹和文件进行大多数操作,也可以通过对应的驱动器、文件夹或文件对象对这些组件进行操作。FSO模型通过两种方法实现对同一对象的操作,其操作效果是相同的,提供这种冗余功能的目的是为了实现最大的编程灵活性。

    在这篇文章中,我们将讲解利用FSO对象模型的TextStream对象对文本文件的操作。

    (一) 用 FileSystemObject 来获取文本文件对象
       1.创建一个 FileSystemObject 对象实例
    要进行文件操作,首先必须创建一个 FileSystemObject 对象实例,用来创建或打开一个文件.创建一个 FileSystemObject 对象实例的具体格式为(以AFileSystemObject)为例:
    Set AFileSystemObject = CreateObject("Scripting.FileSystemObjecct")
       2.用 FileSystemObject 来获取文本文件对象TextStream
    FileSystemObject 提供了两种方法用于获取文本文件对象 TextStream,其中用于创建
    文件的是 CreateTextFile,用于打开已存在文件的是 OpenTextFile,两种方法的返回结果都是
    一个 TextStream 对象的实例,利用该对象可以进行文件的具体操作.
    ⑴ 创建一个新文件
       创建新文件的方法的具体格式为(以AFileSystemObject为例):
       AFilesystemObject.CreateTextFile(NewFileName,OverwriteExistingFile,IsUnicode)
    其中:
       NewFileName 是一个string值,指定要建立的文件的名称,通常为文件的实际路径
    加文件名称,如C:\webshare\aspsamp\filetest.txt
       OverwriteExistingFile 是一个Boolean值,表示如果有同名文件存在时是否覆盖
    原来的文件.该参数可以省略,缺省时为False,即不覆盖原来文件.
       IsUnicode 是一个Boolean值,表示要建立的文件是ASCII文件还是Unicode文件,
    该参数可以省略,缺省时为False,即为ASCII文件.
    ⑵ 打开已存在的文件
       打开已存在文件的方法的具体格式为(以AFileSystemObject为例):
       AFilesystemObject.OpenTextFile(FileName,IOMode,create,format)
    其中:
       FileName 是一个string值,指定要打开的文件的名称,通常为文件的实际路径
    加文件名称,C:\filepath\test.txt
       IOMode 是常数值,表示打开文件的目的,ForReading(1)表示用于读取数据;
    ForAppending表示用于增加数据.该参数可以省略,缺省时为ForReading.
       Create 是一个Boolean值,表示要打开的文件不存在时是否创建新文件,
    该参数可以省略,缺省时为False,即不创建新文件.
       Format 表示文件打开的方式.其可能的值及含义如下:
    TristateTrue : 以 Unicode 的方式打开.
    TristateFalse : 以 ASCII 的方式打开.
    TristateUseDefault : 以系统默认的方式打开.
    该参数可以省略,缺省时为 TristateFalse ,即ASCII方式.
    (二).用 TextStream 进行文件操作
       在建立或打开了文件之后,就可利用对象 TextStream 提供的方法进行文件的实际操作了.
       1.用于写操作的方法有:
    ⑴ Write(string)
       将由string指定的字符串写入到文件中.
    ⑵ WriteLine(string)
       在文件中写入由string指定的字符串,并写入一个换行字符.
       参数string可以省略,此时将在文件中插入一个空行.
    ⑶ WriteBlankLines(NumOfLines)
       在文件中插入若干空行,行数由 NumOfLines 指定.
       2.用于读操作的方法和属性方法有:
    ⑴ AtEndOfLine
       该属性是一个Boolean值,表示文件指针是否已指向当前行的行尾.
    ⑵ AtEndOfStream
       该属性是一个Boolean值,表示文件指针是否已指向文件尾.
    ⑶ Column
       该属性是一个整数值,表示文件指针在当前行中的位置.
    ⑷ Line
       该属性是一个整数值,表示文件指针所在行的行号.
    ⑸ Read(NumOfCharacters)
       该方法从文件当前位置开始,读入由NumOfCharacters数目指定的若干字符,返回一个
       字符串.
    ⑹ ReadLine
       该方法从文件当前位置开始,读入当前行的内容直到行尾,返回一个字符串.
    ⑺ ReadAll
       该方法从当前位置开始,读入整个文件的内容直到文件结束,返回一个字符串.
    ⑻ Skip(NumOfCharacters)
       该方法从文件当前位置开始,跳过由NumOfCharacters数目指定的若干字符.
    ⑼ SKipLine
       该方法从文件当前位置开始,跳过当前行的内容.
       3.用于关闭文件的方法有:
    ⑴ Close
       关闭已经建立或打开的文件.

    (三)、下面就以一个实例来说明如何使用FSO来读取文本文件和如何保存到数据库:

    1、 先创建一个读取文件路径的页面:file.htm

    <FORM METHOD=POST ACTION="upFile.asp" >

    <div align="center"> <br>

    <br>

    <br>

    <br>

    <input type="file" name="path" size="40">

    <INPUT TYPE="submit" name="dr" value="导入信息">

    </div>

    </FORM>

    2、 编写把获取到的文本值保存到数据库代码:upFile.asp

    <%@Language="VBScript"%>

    <%Response.Buffer=true%>

    <!--#include file="adovbs.inc"-->

    <%

    strConn="DSN=DataSourceName"

    set Conn=Server.CreateObject("ADODB.Connection")

    Conn.open strConn

    set ObjComm=Server.CreateObject("ADODB.Command")

    ObjComm.CommandText="sp_AddMsg" ‘调用存储过程

    ObjComm.CommandType=adCmdStoredProc

    Set ObjComm.ActiveConnection=Conn

    ''''''''''创建输入输出参数'''''''''''''''''

    Set ObjParamECom=ObjComm.CreateParameter("WC_ECompanyName",adVarchar,adParamInput,100)

    ObjComm.Parameters.Append ObjParamECom

    '@in_ECompanyName Varchar(50), --公司英文名称

    Set ObjParamAddr=ObjComm.CreateParameter("WC_Address",adVarchar,adParamInput,200)

    ObjComm.Parameters.Append ObjParamAddr

    '@in_Address Varchar(50), --公司地址

    Set ObjParamCity=ObjComm.CreateParameter("WC_City",adVarchar,adParamInput,100)

    ObjComm.Parameters.Append ObjParamCity

    '@in_City Varchar(50), --城市

    ''''''''''创建参数完毕''''''''''''''''''''

    %>

    <%

    dim AllText,strLine1,strLine2,strLine3

    dim strpath,fileurl

    fileurl=""

    strpath=Trim(Request.form("path"))

    fileurl=strpath

    SET FSO=CreateObject("Scripting.FileSystemObject")

    SET ATextStream=FSO.OpenTextFile(fileurl,1,false,TristateFalse)

    '''''''''提取数据''''''''''''''''''''''''''''

    DO WHILE NOT ATextStream.AtEndOfStream

    ''''''初始化变量''''''''''''''''

    strLine1=""

    strLine2=""

    strLine3=""

    '''''''''''''''''''''''''''''''

    ATextStream.SkipLine

    ATextStream.Skip(11)

    strLine1=Trim(ATextStream.ReadLine)

    ATextStream.Skip(11)

    strLine2=Trim(ATextStream.ReadLine)

    ATextStream.Skip(5)

    strLine3=Trim(ATextStream.ReadLine)

    'End if

    ''''''''''将变量加入参数集'''''''''''''

    ObjParamECom.value=strLine1

    ObjParamCCom.value=strLine2

    ObjParamAddr.value=strLine3

    ''''''''''操作结束''''''''''''''''''''

    ObjComm.Execute() '运行命令

    LOOP

    response.write "<br>"+"导入库成功!<a href=dolist.html>[继续导入]</a><br>"

    set Conn=nothing

    set FSO=nothing

    set ATextStream=nothing

    %>

    附:存储过程sp_AddMsg代码

    CREATE PROCEDURE dbo.sp_AddMsg --导入国外企业信息

    (

    @in_CompanyName Varchar(100), --公司名称

    @in_Address Varchar(200), --公司地址

    @in_City Varchar(100), --公司所在城市

    )

    AS

    SET NOCOUNT ON

    BEGIN TRAN

    INSERT INTO Tb_WCLibrary(

    WC_CompanyName,

    WC_CCompanyName,

    WC_Address,

    )

    VALUES(

    @in_CompanyName,

    @in_CCompanyName,

    @in_Address,

    )

    IF @@ERROR <> 0

    BEGIN

    ROLLBACK TRAN

    RETURN -1

    END

    COMMIT TRAN

    RETURN 0

    SET NOCOUNT OFF

    至此,全文内容讲解结束,希望这篇文章能给读者带来一定的帮助。


    [文章录入员:admin]

    相关文章
  • FSO实例
  • 一个实用的FSO-实时统计在线人数
  • FSO操作示例(给初学者)
  • 如何使用FSO搜索硬盘文件
  • 利用FSO取得BMP,JPG,PNG,GIF文件信息
  • 三种禁用FSO组件的方法
  • FSO的一些特殊功能
  • 使用FSO按文件大小浏览文件目录并进行删除操作
  • NAV导致IIS调用FSO失败的解决方法
  • 构建免受FSO威胁虚拟主机
  • 相关书籍:
    本站推荐内容

    近期主机类热搜关键词:
    美国服务器 美国服务器租用 海外服务器租用 国外服务器租用

    ASP/ASP.NET
    ASP/ASP.NET
    PHP技术
    JSP技术
    XML技术
    CGI/PERL
    WEB服务器
    WordPress专题
    其它
    电脑教程阅读排行
    ·用ASP连接数据库
    ·ASP基础
    ·使用Database Acces...
    ·让网站活起来(1)
    ·创建一个简单的ASP页
    ·创建HTML表格
    ·初学者必读 ASP运行环境的搭建
    ·ASP中FSO的神奇功能
    ·VBScript 基础 使用条件...
    ·VBScript 基础 VBSc...