Access导入文本文件的Schema.ini文件格式

Schema.ini格式如下(参考:MSDN主题 Schema.ini File):

Schema.ini用于提供文本数据中的记录规格信息。每个Schema.ini的条目用于指明表的5个特征之一:

文本文件名
文件名有方括号括起来,例如如果要对Sample.txt使用Schema,那么它的对应的Schema条目应该是

[Sample.txt]

文件格式
指令如下:

Format=Value

Value可以取下面的值之一:

TabDelimited 用Tab分隔

CSVDelimited 用逗号分隔

FixedLength 固定长度

Delimited(C) 指定字符,其中C可以为除了双引号(")外的任何字符,也可以为空

字段名、字段宽度和类型
格式为:Coln=字段名 数据类型 [width 宽度]

字段名可以是任意字符,如果字段名包含空格,请使用双引号括起来。

数据类型可以为:

Bit

Byte

Short(Integer)

Long

Currency

Single

Double(Float)

DateTime(Date DateFormat)

Text(Char)

Memo(LongChar)

其中DateFormat是日期的格式字符串例如:Date YYYY-MM-DD

字符集
格式:CharacterSet=ANSI | OEM

格式只有两种:ANSI和OEM

特殊数据类型转换
特殊数据类型转换一般使用的比较少,主要是自定义日期、货币等等的数据格式,一般不用理会。在此也不作详细叙述。请自己查看MSDN帮助:Schema.ini File

 

 

下面给出一个简单的例子,假设有一个表Contacts.txt类似下面:

First NameLast NameHireDate

Nancy Davolio 10-22-91

Robert King 10-23-91

那么Schema.ini个是类似下面的INI文件(我加了注释):

[Contacts.txt] ///需要导入的文本文件名

ColNameHeader=True ///是否有数据头

Format=FixedLength ///字段固定长度

MaxScanRows=0 ///最多导入行

CharacterSet=OEM ///字符集

Col1="First Name" Char Width 10 ///第一列格式

Col2="Last Name" Char Width 9 ///第二列格式

Col3="HireDate" Date Width 8 ///第三列格式

依此类推

我们可以根据数据自动创建这个Schema.ini文件!

注意,Schema.ini必须和需要导入的文本文件在同一目录!!!如果不在同一个目录,必须指定Schema.ini的全路径!

此后,我们就可以利用下面的语句来导入数据了:

DoCmd.TransferText acImportFixed, , "Contacts", "C:Documents.txt"

或者

DoCmd.TransferText acImportFixed, "C:Documents.ini", "Contacts", "C:Documents.txt"

下面给出TransferText的语法(摘自Access帮助):

DoCmd.TransferText [TransferType][, SpecificationName], TableName, FileName[, HasFieldNames][, HtmlTableName][, CodePage]

TransferType 可选 AcTextTransferType。

AcTextTransferType 可以是下列 AcTextTransferType 常量之一:

acExportDelim

acExportFixed

acExportHTML

acExportMerge

acImportDelim 默认

acImportFixed

acImportHTML

acLinkDelim

acLinkFixed

acLinkHTML

如果将该参数留空,则采用默认常量 (acImportDelim)。

SpecificationName 可选 Variant 型。字符串表达式,表示在当前数据库中创建并保存的导入或导出规格的名称。对于固定长度的文本文件, 必须指定参数或使用 schema.ini 文件,该文件还必须保存在导入、链接或导出的文本文件的同一个文件夹中。若要创建一个方案文件, 可使用文本导入/导出向导创建此文件。对于分隔的文本文件和 Microsoft Word 邮件合并数据文件,可以将该参数留空,以便选择默认的导入/导出规格。

TableName 可选 Variant 型。字符串表达式,表示要向其导入文本数据、从中导出文本数据或链接文本数据的 Microsoft Access 表的名称,或者要将其结果导出到文本文件的 Microsoft Access 查询的名称。

FileName 可选 Variant 型。字符串表达式,表示要从中导入、导出到或链接到的文本文件的完整名称(包括路径)。

HasFieldNames 可选 Variant 型。使用 True (-1) 可以在导入、导出或链接时,使用文本文件中的第一行作为字段名。使用 False (0) 可以将文本文件中的第一行看成普通数据。如果将该参数留空,则采用默认值 (False)。该参数将被 Microsoft Word 邮件合并数据文件忽略,这些文件的第一行中必须包含字段名。

HTMLTableNam 可选 Variant 型。字符串表达式,表示要导入或链接的 HTML 文件中的表或列表的名称。除非 transfertype 参数设为 acImportHTML 或 acLinkHTML,否则该参数将被忽略。如果将该参数留空

转载于:https://www.cnblogs.com/zyizyizyi/archive/2011/10/10/2497832.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/263135.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[开发手记] 使用.NET实现你的IP切换器

发布日期:2007.4.17 作者:Anytao ©2007 Anytao.com 转贴请注明出处,留此信息。 下载:[Anytao.IPHelper][代码下载,近期上传] 本文将介绍以下内容: • 批处理文件应用 • 调用外部应用 • 文件处理…

Linux文件读写改权限详解

Linux文件读写改权限详解文件的rwx权限 [ r ][ w ][ x ]该文件可读(read)该文件可修改(write)该文件可执行(execute) 注意:只有当该文件所在目录有写权限,并且该文件有[w]权限,才可以进行删除操作 目录的rwx权限 [ r ][ w ][ x ]可查看目录…

实战剖析三层架构

引言:本文不是从理论的角度来探讨三层架构,而是用一个示例来介绍如何建设一个三层架构的项目,并说明项目中各个文件所处的层次与作用。写本文的目的,不是为了说明自己的这个方法有多对,别人的肯定不对,而是…

动态代理的事务封装

在上篇博客中介绍了使用ThreadLocal维护Connection的方法,这样做的最大的优点就是不用来回的传递Connection了,可是我们有会发如今我们使用事务的时候不可避免的会写很多反复的代码,这些都是与业务逻辑无关的: Connecti…

EF 从sqlserver2008 迁移到 2005出现的BUG

在VS10Server08中使用EF4.4,发布数据库为SQL05,发生错误的问题 问题描述环境描述:工具为VS2010SQL08 R2,EntityFramework版本为4.4(在Framework4.5中为5.0),在本机完全测试完成后,发…

[新闻]Ubuntu7.04于4月19日全球同步发布

[新闻]Ubuntu7.04于4月19日全球同步发布!!!鼓掌欢迎,准备更新!!!http://www.ubuntu.com/转载于:https://www.cnblogs.com/cime63/archive/2007/04/19/720131.html

解决Docker构建时出现的 WARNING: Ignoring https://dl-cdn.alpinelinux.org/alpine/v3.13/main: Permission denied

解决Docker构建时出现的 WARNING: Ignoring https://dl-cdn.alpinelinux.org/alpine/v3.13/main: Permission denied在根据官网的Docker-compose构建示例项目时遇到的问题,原因是因为无法访问官网给出的外网镜像,可能还会出现WARNING: Ignoring https://…

可耻的客户端,可怕的征兆,必须趁早消灭它

最近在我的Android手机上安装一个小软件,不知为何,顶部的消息提示有软件推荐,最开始还以为是某些软件的更新提示,于是点击一次,却发现直接安装该软件。当时我感到非常愤怒。真是一个可耻的程序员做了一个可耻的客户端&…

Table还是CSS,请您说说您的见解

这两天在对网页进行排版,可是觉得Table总是很烦,后来使用CSS,可是CSS也有CSS的问题,无论是什么好像都不能十全十美。请朋友们发现您的意见,您觉得如何? 转载于:https://www.cnblogs.com/edrp/archive/2007/…

Google Android开发精华教程

Android是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。本文汇总整理了时下关于Google Android技术教程的下载资源&…

转盘不转动的问题

2019独角兽企业重金招聘Python工程师标准>>> Stack Overflow is a question and answer site for professional and enthusiast programmers. Its 100% free, no registration required. jQuery Rotate - IE7 & IE8 Issues up vote 11 down vote favorite 3 I a…

主机无法连接虚拟机中的redis服务

解决&#xff1a;主机<本地>无法连接虚拟机中的redis服务首先保证虚拟机网络已经和主机网络互通&#xff0c;即相互ping对方IP&#xff0c;能ping通但是仍然连不上redis服务&#xff0c;可能是以下问题。redis服务配置问题 配置redis.conf如下 protected-mode no #关闭…

重构机房收费系统(二)

接上篇《机房收费系统重构&#xff08;一&#xff09;》 二、概要设计 完成了用例图&#xff0c;并用结合用例图完善了一下需求分析说明书&#xff0c;忘记是第几次修订需求分析说明书。有了用例图&#xff0c;很自然就进入了概要设计阶段。我认为这一阶段就是结合包图解决系统…

VS 2005 安装一个的小问题

今天通过 添加/删除 安装了VC的部分功能之后&#xff0c;在 程序》Visual Studio 2005 》Visual Studio 2005 Tools 里面竟然找不到 ActiveX Control Test Container 了&#xff0c;但是却有 Spy和 MFC-ATL Trace Tool&#xff0c;建了MFC ActiveX功能在IDE里面 工具 菜单中也找…

《Windows核心编程》学习笔记(9)– 在win7或者vista系统下提升一个进程的运行权限...

win7或者vista默认运行程序是在受限制的环境下运行的&#xff0c;以减轻病毒对于系统的破坏。那么我们怎样才能提升一个进程的权限以至让它在 管理员模式下运行。当然CreateProcess函数没有提供这个功能。相反我们需要调用的是ShellExecuteEx函数&#xff1a; BOOL ShellExecu…

2015第29周二AOP

1、问题&#xff1a;想要添加日志记录、性能监控、安全监测 2、最初解决方案2.1、最初解决方案&#xff1a;在每个需要的类函数中重复写上面处理代。 缺点&#xff1a;太多重复代码&#xff0c;且紧耦合2.2、抽象类进行共性设计&#xff0c;子类进行个性设计&#xff0c;此处不…

Docker-compose配置Mysql,Redis,MongoDB

Docker-compose下配置Mysql&#xff0c;Redis&#xff0c;MongoDB详解一、docker-compose简介二、构建一个实例项目1.前后端实现2.Dockerfile及docker-compose.yml3. 生成镜像三、实例程序源码一、docker-compose简介 Compose是用于定义和运行多容器Docker应用程序的工具。通过…

初学者应该了解的一些SQL语句及hr 用户解锁相关

初学者应该了解的一些SQL语句 1.显示当前连接用户SQL> show user&#xff1b; 2.查看系统拥有哪些用户SQL> select * from all_users; 3.连接到新用户SQL> conn 用户名/密码 4.查询当前用户下所有对象SQL> select * from tab; 5.建立第一个表SQL> create table …

用Delphi 6开发ASP上传组件详解

文件上传是WEB开发中经常要用到的功能&#xff0c;但ASP本身和内置的组件都不支持文件上传功能。网上流传的一些第三方组件虽然能够解决这个问题&#xff0c;但大多是要收费的&#xff0c;更别说Open Source了。本文将详细剖析WEB文件上传的原理&#xff0c;以及一步步指导读者…

使用WebDeployment Project改善VS2005发布网站问题

VS2005发布网站时不会像VS2003一样生成规则的DLL文件、而生成的DLL文件名含有随机数且不能一个项目生成一个DLL文件、让人有一些遗憾、为了做到像vs2003一样&#xff0c;微软发布了WebDeployment Project插件可解决此问题&#xff1a;下载地址1、下载后安装、右键选择vs2005中的…