VB6.0 读取CSV文件
最近做了一个Upload文件的需求,文件的格式为CSV,读取文件的方法整理了一下,如下:
1、先写了一个读取CSV文件的Function:
'读取CSV文件
'假设传入的参数strFile=C:\Documents and Settings\Administrator\桌面\TPA_Report1 - 副本.CSV
Public Function Read_CSVFile(strFile As String) As ADODB.Recordset
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
Dim conn As ADODB.Connection
Set conn = New ADODB.Connection
Dim strFilePath As String, strFileName As String
Dim i As Integer
i = Len(strFile)
Do Until Mid(strFile, i, ) = "\" '从后向前查找倒数第一个"\"
i = i -
Loop
strFilePath = Left(strFile, i - ) '返回结果:C:\Documents and Settings\Administrator\桌面
strFileName = Mid(strFile, InStrRev(strFile, "\") + 1) '返回结果:TPA_Report1 - 副本.CSV conn.Open "DRIVER={Microsoft Text Driver (*.txt; *.csv)};" & _
"DBQ=" & strFilePath & ";", "", "" rs.Open "select * from [" & strFileName & "]", conn, adOpenStatic, _
adLockReadOnly, adCmdText
Set Read_CSVFile = rs
Set rs = Nothing
Set conn = Nothing
End Function
2、调用上面的Function:
Private Sub cmdUpload_Click()
Dim rsData As ADODB.Recordset 'CSV中的所有的数据
Dim rsUploadLog As ADODB.Recordset '上传纪录 '取得CSV中所有的数据
Set rsData = Read_CSVFile(txtFileName.Text) If rsData.RecordCount > Then
DoEvents
Dim iTotal As Integer
iTotal = rsData.MoveFirst
Do While Not rsData.EOF '循环数据集
'UploadLog
rsUploadLog.AddNew
rsUploadLog!Row = iTotal +
rsUploadLog!Createby = sUserID
rsUploadLog!CreateDate = dServerdateTime
rsUploadLog!Note = rsData.Fields("投保人名字") & "" '“投保人名字”为CSV文件的表头
iTotal = iTotal +
DoEvents
rsData.MoveNext
Loop '一批数据里面有的成功,有的失败.进行保存的时候,成功的就保存更新,不成功的就不保存
If Not BatchSaving(conn, rsUploadLog) = True Then
MsgBox "Upload un-successfully done", vbInformation, sApplicName
Else
MsgBox "Upload successfully done", vbInformation, sApplicName
End If
End If
'释放资源,否则CSV打开会是只读状态
rsData.Close
Set rsData.ActiveConnection = Nothing
Set rsData = Nothing
Exit Sub
End Sub
VB6.0 读取CSV文件的更多相关文章
- VB6.0 读取Excel文件并返还数据集RecordSet
读取Excel文件并返还数据集RecordSet 该方法适用于.xls,.xlsx类型的文件 读取Excel文件的Function: '取得数据集 Function getRecordSetForEx ...
- sparkR读取csv文件
sparkR读取csv文件 The general method for creating SparkDataFrames from data sources is read.df. This met ...
- php读取csv文件,在linux上出现中文读取不到的情况 解决方法
今,php读取csv文件,在linux上出现中文读取不到的情况,google,后找到解决办法<?phpsetlocale(LC_ALL, 'zh_CN');$row = 1;$handle = ...
- Python 读取csv文件到excel
朋友问我如何通过python把csv格式的文件另存为xls文件,自己想了想通过读取csv文件然后再保存到xls文件中即可,也许还有其他简单的方法,但这里也为了练习python语法及其他知识,所以采用了 ...
- java读取CSV文件添加到sqlserver数据库
在直接将CSV文件导入sqlserver数据库时出现了错误,原因还未找到,初步怀疑是数据中含有特殊字符.于是只能用代码导数据了. java读取CSV文件的代码如下: package experimen ...
- C#:StreamReader读取.CSV文件(转换成DataTable)
using System.Data; using System.IO; /// <summary> /// Stream读取.csv文件 /// </summary> /// ...
- selenium3 文件系列之------ opencsv读取csv文件
最近在学习selenium有关文件的读取测试,今天先总结一下如何读取csv文件.CSV的定义是与逗号分隔的值(Comma-Separated Values),在Java中需要用到第三方lib去处理读取 ...
- python之小应用:读取csv文件并处理01数据串
目的:读取csv文件内容,把0和1的数据串取出来,统计出现1的连续次数和各次数出现的频率次数 先读取csv文件内容: import csv def csv_read(file): list = [] ...
- selenium java读取csv文件 (数据驱动)
javacsv2.1 下载地址:http://sourceforge.net/projects/javacsv/files/ 该链接可以下载java读取csv文件的jar 包.下载之后解压找到对应的. ...
随机推荐
- 【uTenux实验】内存池管理(固定内存池和可变内存池)
1.固定内存池管理实验 内存管理是操作系统的一个基础功能.uTenux的内存池管理函数提供了基于软件的内存池管理和内存块分配管理.uTenux的内存池有固定大小的内存池和大小可变的内存池之分,它们被看 ...
- IOS跳转设置页面及其他各种跳转页面设置
转载来源 CocoaChina 跳到更多设置界面 除了跳到WiFi设置界面,能不能跳到其他的设置界面呢?比如:定位服务.FaceTime.音乐等等.都是可以的,一起来看看如何实现的! 定位服务 定位服 ...
- Struts2.3.4+Hibernate4.2.4+Mysql6.0整合
1.项目搭建过程: (1). 创建一个Web Project.导入Struts2和Hibernate的jar包.(如果不知道Struts2的jar包,可以在下载的struts的jar包中,找到apps ...
- [计算机取证技术] VDI-in-a-Box Analysis Results
原文跳转: http://dig4n6.blogspot.tw/2013/07/vdi-in-box-analysis-results.html *文中引用图片如无法浏览,请科学上网* VDI-in- ...
- cocos2dx loading界面 预加载资源 与 资源释放
预加载图片: 1.CCTextureCache::sharedTextureCache()->addImage("icon.png"); 2.CCTextureCache:: ...
- 【转载】JMeter学习(一)工具简单介绍
JMeter学习(一)工具简单介绍 一.JMeter 介绍 Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序).它可以用来测试静 ...
- 纸上谈兵:AVL树
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 二叉搜索树的深度与搜索效率 我们在树, 二叉树, 二叉搜索树中提到,一个有n个节点 ...
- PHP&MySQL 语法
PHP操作MySQL数据库 第一步:连接数据库 $dbhost = 'localhost:3306'; //mysql服务器主机地址 $dbuser = 'guest'; //mysql用户名 $db ...
- 【转】详解Oracle的dual表
网址:http://www.adp-gmbh.ch/ora/misc/dual.html dual is a table which is created by oracle along with t ...
- 块级格式化上下文(block formatting context)、浮动和绝对定位的工作原理详解
CSS的可视化格式模型中具有一个非常重要地位的概念——定位方案.定位方案用以控制元素的布局,在CSS2.1中,有三种定位方案——普通流.浮动和绝对定位: 普通流:元素按照先后位置自上而下布局,inli ...