Office中国论坛/Access中国论坛

标题: 求助:请注译代码 [打印本页]

作者: ccczzz    时间: 2004-5-26 01:55
标题: 求助:请注译代码
Public Sub Turn(ByVal Filename As String)

    Dim intFileNo As Integer

    Dim BLOB() As Byte

    Dim lngFile As Long

    Dim i As Long

   

    intFileNo = FreeFile

    Open Filename For Binary As intFileNo

    lngFile = LOF(intFileNo)

    ReDim BLOB(lngFile)

   

    Get intFileNo, , BLOB

    Close intFileNo

   

    For i = 0 To lngFile - 1

        If BLOB(i) < 32 And BLOB(i) <> 10 Then BLOB(i) = 32

    Next

   

   

    intFileNo = FreeFile

    Open Filename & "-n.txt" For Binary As intFileNo

    Put intFileNo, , BLOB

    Close intFileNo



    Dim ss As String

    Dim kk

    Dim jj, dd

   

    Open Filename & "-n.txt" For Input As intFileNo

    Line Input #1, ss

    Close intFileNo

    kk = Split(ss, Chr(10))

    lngFile = UBound(kk)

   

    Dim rs As New ADODB.Recordset

    rs.Open "[表2]", CurrentProject.Connection, adOpenKeyset, adLockOptimistic

    rs.AddNew

   

    For i = 0 To lngFile - 1

        ss = "": dd = ""

        kk(i) = LTrim(kk(i))

        

        If kk(i) <> "" Then

            If InStr(1, kk(i), " ") > 0 Then ss = Left(kk(i), InStr(1, kk(i), " ") - 1)

            dd = LTrim(Mid(kk(i), Len(ss) + 5))

            If InStr(1, dd, " ") > 0 Then dd = Left(dd, InStr(1, dd, " ") - 1)

            Select Case ss

            Case "Date":        rs("Date") = dd & " "

            Case "Operator":    rs("OperatorID") = dd & " "

            Case "atient":     rs("atientID") = dd & " "

            Case "Type":        rs("Type") = dd & " "

            Case "Temp":        rs("Temp") = dd & " "

            Case "tHb":         rs("tHb") = dd & " "

            Case "FIO2":        rs("FIO2") = dd & " "

            Case "pH(T)":       rs("pH") = dd & " "

            Case "pCO2(T)":     rs("pCO2") = dd & " "

            Case "pO2(T)":      rs("pO2") = dd & " "

            Case "HCO3-":       rs("HCO3-") = dd & " "

            Case "SBC":         rs("SBC") = dd & " "

            Case "ABE":         rs("ABE") = dd & " "

            Case "SBE":         rs("SBE") = dd & " "

            Case "tCO2":        rs("tCO2") = dd & " "

            Case "sO2":         rs("sO2") = dd & " "



            End Select

            

        End If

    Next

    rs.Update

    rs.Close

    Set rs = Nothing

End Sub



这段代码已经运用,但是没有全部看懂意思,查阅了帮助,还是不太明白,请各位帮助注译一下,谢谢。



[此贴子已经被作者于2004-5-25 17:57:34编辑过]


作者: make    时间: 2004-5-26 10:53
好像是讀文本文件內容再增加到表里
作者: yangzn    时间: 2004-5-27 03:53
同意楼上,是一个数据导入(转换)的程序
作者: ccczzz    时间: 2004-5-28 03:26
该代码的功能是将文本读入数据表,我想知道每句代码的意思,谢谢
作者: make    时间: 2004-5-28 03:42
  intFileNo = FreeFile   '取随机文件号

    Open Filename For Binary As intFileNo ' 以二进制形式打开文件

    lngFile = LOF(intFileNo)   '到文件的最尾

    ReDim BLOB(lngFile)   '重定义组长度

   

    Get intFileNo, , BLOB   '取到数据到字节组

    Close intFileNo   '关闭文件

   

    For i = 0 To lngFile - 1  '

        If BLOB(i) < 32 And BLOB(i) <> 10 Then BLOB(i) = 32

    Next

   

   

    intFileNo = FreeFile

    Open Filename & "-n.txt" For Binary As intFileNo

    Put intFileNo, , BLOB

    Close intFileNo




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3