我有段vb代码,但是完全看不明白代码贴出来你们帮忙看看Public Class FOXTERNINI Public Declare Function GetPrivateProfileStringByKeyName Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpszKey As String, ByVal lpszDefault As String, ByVal lpszReturnBuffer As String, ByVal cchReturnBuffer As Integer, ByVal lpszFile As String) As Long Public Declare Function WritePrivateProfileStringByKeyName Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal lpString As String, ByVal lplFileName As String) As Long Public Declare Function GetPrivateProfileSection Lib "kernel32" Alias "GetPrivateProfileSectionA" (ByVal lpAppName As String, ByVal lpReturnedString As String, ByVal nSize As Integer, ByVal lpFileName As String) As Integer Public Shared Function INIRead(ByVal sSection As String, ByVal sField As String, ByVal sDefault As String, ByVal sINIFile As String) As String Dim lRet As Long Dim sValue As String 'MAX=100 sValue = Space(256) lRet = GetPrivateProfileStringByKeyName(sSection, sField, "", sValue, Len(sValue), sINIFile) If lRet > 0 Then sValue = Trim(sValue) sValue = Left(sValue, Len(sValue) - 1) Else sValue = sDefault lRet = WritePrivateProfileStringByKeyName(sSection, sField, sDefault, sINIFile) End If INIRead = sValue End Function Public Shared Function INIWrite(ByVal sSection As String, ByVal sField As String, ByVal sDefault As String, ByVal sINIFile As String) As Boolean Dim lRet As Long lRet = WritePrivateProfileStringByKeyName(sSection, sField, sDefault, sINIFile) INIWrite = CBool(lRet) End Function End Class Protected Sub btnImport_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnImport.Click If (ddlListType.SelectedIndex = 0) Then lblMsg.Text = "Please Select List Type !" Else Try Dim sDBLocation As String Dim nSpecialChar As Integer sDBLocation = INIRead("GENERAL", "DATABASE", "C:\FoxternIVR\DIAL.MDB", "C:\FoxternIVR\config.ini") nSpecialChar = sDBLocation.LastIndexOf("\") sDBLocation = sDBLocation.Substring(0, nSpecialChar) + "\" Dim strConnString As String = "Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=C:\FoxternIVR\\;Extensions=asc,csv,tab,txt;" 'Dim strConnString As String = "Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=" + sDBLocation + ";Extensions=asc,csv,tab,txt;" Dim conn As New OdbcConnection(strConnString) Dim sFile As String If (ddlListType.SelectedIndex = 1) Then sFile = "diallist.csv" Else sFile = "optlist.csv" End If Dim sSQL As String = "SELECT * from [" + sFile + "]" Dim da As New OdbcDataAdapter(sSQL, conn) Dim ds As New DataSet Dim sDialNum As String Dim sDialGrp As String da.Fill(ds) For i As Integer = 0 To ds.Tables(0).Rows.Count - 1 sDialNum = "" sDialGrp = "" sDialNum = ds.Tables(0).Rows(i).Item(0).ToString() sDialGrp = ds.Tables(0).Rows(i).Item(1).ToString() '20081009 Check existing dialList 'There is no number in existing diallist and there is no duplicate number in OptList 'Import the dial number in If Not clsdb.SelectOptList(sDialNum, sDialGrp) = True Then If (ddlListType.SelectedIndex = 1) Then If Not clsdb.SelectDialList(sDialNum) = True Then clsdb.ImportDialListLogin(sDialNum, sDialGrp) End If Else clsdb.ImportOptlist(sDialNum, sDialGrp) End If End If Next 'Else ' For i As Integer = 0 To ds.Tables(0).Rows.Count - 1 ' sDialNum = "" ' sDialGrp = "" ' sDialNum = ds.Tables(0).Rows(i).Item(0).ToString() ' sDialGrp = ds.Tables(0).Rows(i).Item(1).ToString() ' If clsdb.SelectOptList(sDialNum, sDialGrp) = False Then ' End If ' Next 'End If AccessDataSource1.DataBind() GridView1.DataBind() lblMsg.Text = "Import success " Catch ex As Exception lblMsg.Text = "err:" & ex.Message.ToString End Try End If End Sub
Public Declare Function GetPrivateProfileStringByKeyName Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpszKey As String, ByVal lpszDefault As String, ByVal lpszReturnBuffer As String, ByVal cchReturnBuffer As Integer, ByVal lpszFile As String) As Long
Public Declare Function WritePrivateProfileStringByKeyName Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal lpString As String, ByVal lplFileName As String) As Long
Public Declare Function GetPrivateProfileSection Lib "kernel32" Alias "GetPrivateProfileSectionA" (ByVal lpAppName As String, ByVal lpReturnedString As String, ByVal nSize As Integer, ByVal lpFileName As String) As Integer Public Shared Function INIRead(ByVal sSection As String, ByVal sField As String, ByVal sDefault As String, ByVal sINIFile As String) As String
Dim lRet As Long
Dim sValue As String 'MAX=100
sValue = Space(256)
lRet = GetPrivateProfileStringByKeyName(sSection, sField, "", sValue, Len(sValue), sINIFile)
If lRet > 0 Then
sValue = Trim(sValue)
sValue = Left(sValue, Len(sValue) - 1)
Else
sValue = sDefault
lRet = WritePrivateProfileStringByKeyName(sSection, sField, sDefault, sINIFile)
End If
INIRead = sValue
End Function
Public Shared Function INIWrite(ByVal sSection As String, ByVal sField As String, ByVal sDefault As String, ByVal sINIFile As String) As Boolean
Dim lRet As Long lRet = WritePrivateProfileStringByKeyName(sSection, sField, sDefault, sINIFile)
INIWrite = CBool(lRet) End Function
End Class
Protected Sub btnImport_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnImport.Click
If (ddlListType.SelectedIndex = 0) Then
lblMsg.Text = "Please Select List Type !"
Else
Try
Dim sDBLocation As String
Dim nSpecialChar As Integer
sDBLocation = INIRead("GENERAL", "DATABASE", "C:\FoxternIVR\DIAL.MDB", "C:\FoxternIVR\config.ini")
nSpecialChar = sDBLocation.LastIndexOf("\")
sDBLocation = sDBLocation.Substring(0, nSpecialChar) + "\"
Dim strConnString As String = "Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=C:\FoxternIVR\\;Extensions=asc,csv,tab,txt;"
'Dim strConnString As String = "Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=" + sDBLocation + ";Extensions=asc,csv,tab,txt;"
Dim conn As New OdbcConnection(strConnString)
Dim sFile As String
If (ddlListType.SelectedIndex = 1) Then
sFile = "diallist.csv"
Else
sFile = "optlist.csv"
End If Dim sSQL As String = "SELECT * from [" + sFile + "]"
Dim da As New OdbcDataAdapter(sSQL, conn)
Dim ds As New DataSet
Dim sDialNum As String
Dim sDialGrp As String
da.Fill(ds) For i As Integer = 0 To ds.Tables(0).Rows.Count - 1
sDialNum = ""
sDialGrp = ""
sDialNum = ds.Tables(0).Rows(i).Item(0).ToString()
sDialGrp = ds.Tables(0).Rows(i).Item(1).ToString()
'20081009 Check existing dialList
'There is no number in existing diallist and there is no duplicate number in OptList
'Import the dial number in
If Not clsdb.SelectOptList(sDialNum, sDialGrp) = True Then If (ddlListType.SelectedIndex = 1) Then
If Not clsdb.SelectDialList(sDialNum) = True Then
clsdb.ImportDialListLogin(sDialNum, sDialGrp)
End If
Else
clsdb.ImportOptlist(sDialNum, sDialGrp)
End If End If
Next
'Else
' For i As Integer = 0 To ds.Tables(0).Rows.Count - 1
' sDialNum = ""
' sDialGrp = ""
' sDialNum = ds.Tables(0).Rows(i).Item(0).ToString()
' sDialGrp = ds.Tables(0).Rows(i).Item(1).ToString()
' If clsdb.SelectOptList(sDialNum, sDialGrp) = False Then ' End If
' Next
'End If AccessDataSource1.DataBind()
GridView1.DataBind()
lblMsg.Text = "Import success "
Catch ex As Exception
lblMsg.Text = "err:" & ex.Message.ToString
End Try
End If
End Sub