我想转换的txt文本格式入下 23,05,03
23,05,08
也就是7个用逗号隔开的数字,并且txt文本中有多少行这样的数据时不确定的。
access数据库是已经建好的,数据表是dataget,表头是,“时”,“分”,“秒”,文本文件中的数据分别与他们对应,想用一个标准按钮就实现转入功能,希望能得到达人的代码,不胜感激!!!!
23,05,08
也就是7个用逗号隔开的数字,并且txt文本中有多少行这样的数据时不确定的。
access数据库是已经建好的,数据表是dataget,表头是,“时”,“分”,“秒”,文本文件中的数据分别与他们对应,想用一个标准按钮就实现转入功能,希望能得到达人的代码,不胜感激!!!!
解决方案 »
- vba問題,新手請教高手。。急死人啦
- 怎样使连接的字符串之间有间隔呢?
- Access问题
- 为什么同一台仪器在不同电脑中串口收到的数据不同!
- 真正做一个东西才发现自己的知识太少了!问一个问题:如何做使运行后的主窗口能适应放大和缩小,比如最大化的时候!可是我现在的情况是最
- 怎样用vb依次读取一个文件夹中若干个不知道名字的指定格式的文件(这里以Excel表格为例)?
- 请问:哪里有VB安装程序下载!???????
- 关于模糊查询like?
- VBScript问题,如何在VBScript里面调用一个程序并给他加参数…
- 一个关于用VB制作帮助的问题。
- 请问可以SETUP程序如何解压出很多文件来,请问设计思路是怎么写的
- 高分求解多种语言编写的程序怎么衔接
2条记录之间用什么分隔
23.05.03
23.05.08
读入需转换的文件,遍历每一行,然后:
dim s as string
s:= '23.05.03' '实际应用中,替换成该行文本
s:= Left(s,2)+","+SubString(s,4,2)+","+Right(s,2)
'以下是数据库插入语句
SQLStr="Insert Into 目标表(时,分,秒) Values("+s+")"
具体的命令和字符串修饰符记不清了,根据VB规则做相应修改。
Public Function ExecuteSQL(ByVal SQL As String, MsgString As String) As ADODB.Recordset
Dim Cnn As ADODB.Connection '定义连接
Dim Rst As ADODB.Recordset
Dim sTokens() As String '定义字符串
On Error GoTo ExecuteSQL_Error '异常处理
sTokens = Split(SQL) '用Split函数产生一个包含各个子串的数组
Set Cnn = New ADODB.Connection '创建连接
Cnn.Open ConnectString
If InStr("INSERT,DELETE,UPDATE", UCase$(sTokens(0))) Then '判断字符串中是否含有指定内容
Cnn.Execute SQL '执行查询语句
MsgString = sTokens(0) & "query successful" '返回查询信息
Else
Set Rst = New ADODB.Recordset '闯将数据集对象
Rst.Open Trim$(SQL), Cnn, adOpenKeyset, adLockOptimistic '返回查询结果
Set ExecuteSQL = Rst '返回记录集对象
MsgString = "查询到" & Rst.RecordCount & " 条记录"
End If
ExecuteSQL_Exit: Set Rst = Nothing '清空数据集对象
Set Cnn = Nothing '中断连接
Exit FunctionExecuteSQL_Error: '判断错误类型
MsgString = "查询错误:" & Err.Description
MsgBox MsgString
Resume ExecuteSQL_ExitEnd Function'连接数据库
Public Function ConnectString() As String
'返回一个数据库连接
ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password= 密码 ;Data Source=" & App.Path & "\db.mdb"
End Function
'===========建立窗体,写下面代码=============
Private Sub Command1_Click()
'定义SQL语句及数据库参数
Dim TxtSQL As String
Dim Mrc As New ADODB.Recordset
Dim MsgText As String
'文本读入变量
Dim InputData As String
'临时变量
Dim StrTemp() As String
Open App.Path & "\数据文本.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, InputData
DoEvents
StrTemp = Split(InputData, ".") '如果分割符是,就把.替换成,这个地方格式一定要和文本里的一样,否则无法分组.
TxtSQL = "Insert Into dataget(时) Values(StrTemp(0))"
Set Mrc = ExecuteSQL(TxtSQL, MsgText)
Mrc.Close
TxtSQL = "Insert Into dataget(分) Values(StrTemp(1))"
Set Mrc = ExecuteSQL(TxtSQL, MsgText)
Mrc.Close
TxtSQL = "Insert Into dataget(秒) Values(StrTemp(2))"
Set Mrc = ExecuteSQL(TxtSQL, MsgText)
Mrc.Close
'上面添加的不成功就试试下面的。上面的格式可能有错误。
'TxtSQL = "select * from dataget"
'Set Mrc = ExecuteSQL(TxtSQL, MsgText)
'Mrc.AddNew
'Mrc.Fields("时") = StrTemp(0)
'Mrc.Fields("分") = StrTemp(1)
'Mrc.Fields("秒") = StrTemp(2)
'Mrc.Update
'Mrc.Close
Loop
Close #1
MsgBox "转换完成"
End Sub