VB下幾個非常有用的函式 (轉)
VB下幾個非常有用的
'————————(1)————————————
'獲得指定ini中某個節下面的所有鍵值 TrueZq,,需要下面的宣告
'Private Declare Function GetPrivateProfileSection Lib "kernel32" Alias "GetPrivateProfileSectionA" (ByVal lpAppName As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
'返回一個字串陣列
'舉例:
'Dim arrClass() As String
'arrClass = GetInfoSection("class", "d:type.ini")
Public Function GetInfoSection(strSection As String, strIniFile As String) As String()
Dim strReturn As String * 32767
Dim strTmp As String
Dim nStart As Integer, nEnd As Integer, i As Integer
Dim sArray() As String
Call GetPrivateProfileSection(strSection, strReturn, Len(strReturn), strIniFile)
strTmp = strReturn
i = 1
Do While strTmp <> ""
nStart = nEnd + 1
nEnd = InStr(nStart, strReturn, vbNullChar)
strTmp = Mid$(strReturn, nStart, nEnd - nStart)
If Len(strTmp) > 0 Then
ReDim Preserve sArray(1 To i)
sArray(i) = strTmp
i = i + 1
End If
L
GetInfoSection = sArray
End Function
'————————(2)————————————
'作用:去掉字串中的首尾空格、所有無效字元
'測試用例
'Dim strRes As String
'Dim strSour As String
'
'strSour = " " & vbNullChar & vbNullChar & " ab cd" & vbNullChar
'strRes = zqTrim(strSour)
'MsgBox " 長度=" & Len(strSour) & "值=111" & strRes & "222"
Public Function zqTrim(ByVal strSour As String) As String
Dim strTmp As String
Dim nLen As Integer
Dim i As Integer, j As Integer
Dim strNow As String, strValid() As String, strNew As String
'strNow 當前字元
'strValid 有效字元
'strNew 最後生成的新字元
strTmp = Trim$(strSour)
nLen = Len(strTmp)
If nLen < 1 Then
zqTrim = ""
Exit Function
End If
j = 0
For i = 1 To nLen
strNow = Mid(strTmp, i, 1) '每次讀取一個字元
'MsgBox Asc(strNow)
If strNow <> vbNullChar And Asc(strNow) <> 9 Then '如果有效,則存入有效陣列
ReDim Preserve strValid(j)
strValid(j) = strNow
j = j + 1
End If
Next i
strNew = Join(strValid, "") '將所有有效字元連線起來
zqTrim = Trim$(strNew) '去掉字串中的首尾空格
End Function
'————————(3)————————————
'檢查檔案是否存在,存在返回 TRUE,否則返回FALSE
Public Function CheckFileExist(strFile As String) As Boolean
If Dir(strFile, vbDirectory) <> "" Then
CheckFileExist = True
Else
CheckFileExist = False
End If
End Function
'————————(4)————————————
'獲得指定ini檔案中某個節下面某個子鍵的鍵值,需要下面的API宣告
'Public Declare Function GetPrivateProfileString Lib "kernel32" Alias _
' "GetPrivateProfileStringA" (ByVal lpApplicationName As String, _
' ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString _
' As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
'返回一個字串
'呼叫舉例:
'Dim strRun As String
'strRun = GetiniValue("","Run", "C:WindowsWin.ini")
Public Function GetiniValue(ByVal lpKeyName As String, ByVal strName As String, ByVal strIniFile As String) As String
Dim strTmp As String * 255
Call GetPrivateProfileString(lpKeyName, strName, "", _
strTmp, Len(strTmp), strIniFile)
GetiniValue = Left$(strTmp, InStr(strTmp, vbNullChar) - 1)
End Function
'————————(5)————————————
'獲得Windows目錄 ,需要下面的API宣告
'Private Declare Function GetWindowsDirectory Lib "kernel32" Alias "GetWindowsDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long
'返回一個字串,如“C:Windows”、“C:Winnt”
'呼叫舉例:
'Dim strWindir As String
'strWindir = GetWinDir()
Private Function GetWinDir()
Dim windir As String * 100
Call GetWindowsDirectory(windir, 100)
GetWinDir = Left$(windir, InStr(windir, vbNullChar) - 1)
End Function
'————————(6)————————————
'獲得Windows目錄,需要下面的API宣告
'Private Declare Function GetSystemDirectory Lib "kernel32" Alias "GetSystemDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long
'返回一個字串,如“C:WindowsSystem”、“C:WinntSystem32”
'呼叫舉例:
'Dim strSysDir As String
'strSysDir = GetSystemDir()
Private Function GetSystemDir()
Dim strSysDir As String * 100
Call GetSystemDirectory(strSysDir, 100)
GetSystemDir = Left$(strSysDir, InStr(strSysDir, vbNullChar) - 1)
End Function
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-988621/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 4個非常有用的 Flutter 技巧Flutter
- vb如何使用ftp函式,vb如何使用ftp函式要知道這些FTP函式
- 17個非常有用的PHP類和庫PHP
- python 的幾個常用的函式Python函式
- 幾個重要的內建函式函式
- 一個非常老但是很有用的功能-閃回
- MySQL8 非常有用的一個新特性MySql
- 網上看到的“12個非常有用的JavaScript技巧”JavaScript
- Maven那些非常有用的 PluginMavenPlugin
- Kotlin的幾個擴充套件函式Kotlin套件函式
- 最簡單易懂的laravel事件,這個功能非常的有用Laravel事件
- 2 分鐘,瞭解 4 個極為有用的 MetricsQL 函式SQL函式
- Python中非常有用的三個資料科學庫Python資料科學
- 關於執行緒的幾個函式執行緒函式
- set容器幾個關鍵函式函式
- 快速介紹幾個JS函式JS函式
- 推介幾款 windows 下非常好用的工具Windows
- 幾個簡單又實用的PHP函式PHP函式
- python語言幾個常見函式的使用Python函式
- 設計log函式庫的幾個要點函式
- 非常有用的Linux系統操作命令Linux
- 分享一個非常全的php正則驗證車牌格式的函式PHP函式
- 人臉識別幾個很有用的連結
- 執行緒中的幾個退出相關函式執行緒函式
- 新知識點:Python裡面有幾個有趣的函式Python函式
- Kotlin中的幾個常用函式let with run also applyKotlin函式APP
- oracle 系統自帶幾個常用函式Oracle函式
- [轉]23個最有用的Elasticsearch檢索技巧Elasticsearch
- 分享幾個Python小技巧函式裡的4個小花招Python函式
- AppDelegate中幾個常用回撥函式的呼叫時機APP函式
- 瞭解React Hooks及其常用的幾個鉤子函式ReactHook函式
- webgl內建函式--幾何函式與矩陣函式Web函式矩陣
- 7個你可能不知道的蘋果Mac使用技巧 非常有用蘋果Mac
- 發現ThinkPHP裡面隱藏了幾個有用的方法PHP
- 在 Linux 下 9 個有用的 touch 命令示例Linux
- Mysql系列第十講 常用的幾十個函式詳解MySql函式
- Manim 學習筆記(一)--常用的幾個函式和操作筆記函式
- 推薦12款非常有用的流行 jQuery 外掛jQuery
- Python中冷門但非常好用的內建函式Python函式