读写INI文件的四个函数
2018-06-17 17:14:21来源:未知 阅读 ()
PrivateDeclareFunctionGetPrivateProfileStringLib"kernel32"Alias
"GetPrivateProfileStringA"(ByVallpApplicationNameAsString,ByVallpKeyNameAsAny,ByVal
lpDefaultAsString,ByVallpReturnedStringAsString,ByValnSizeAsLong,ByVal
lpFileNameAsString)AsLong
PrivateDeclareFunctionWritePrivateProfileStringLib"kernel32"Alias
"WritePrivateProfileStringA"(ByVallpApplicationNameAsString,ByVallpKeyNameAsAny,ByVal
lpStringAsAny,ByVallpFileNameAsString)AsLong
'以下两个函数,读/写ini文件,固定节点setting,in_key为写入/读取的主键
'仅仅针对是非值
'Y:yes,N:no,E:error
PublicFunctionGetIniTF(ByValIn_KeyAsString)AsBoolean
OnErrorGoToGetIniTFErr
GetIniTF=True
DimGetStrAsString
GetStr=VBA.String(128,0)
GetPrivateProfileString"Setting",In_Key,"",GetStr,256,App.Path&"\SourceDB.ini"
GetStr=VBA.Replace(GetStr,VBA.Chr(0),"")
IfGetStr="1"Then
GetIniTF=True
GetStr=""
Else
GoToGetIniTFErr
EndIf
ExitFunction
GetIniTFErr:
Err.Clear
GetIniTF=False
GetStr=""
EndFunction
PublicFunctionWriteIniTF(ByValIn_KeyAsString,ByValIn_DataAsBoolean)AsBoolean
OnErrorGoToWriteIniTFErr
WriteIniTF=True
IfIn_Data=TrueThen
WritePrivateProfileString"Setting",In_Key,"1",App.Path&"\SourceDB.ini"
Else
WritePrivateProfileString"Setting",In_Key,"0",App.Path&"\SourceDB.ini"
EndIf
ExitFunction
WriteIniTFErr:
Err.Clear
WriteIniTF=False
EndFunction
'以下两个函数,读/写ini文件,不固定节点,in_key为写入/读取的主键
'针对字符串值
'空值表示出错
PublicFunctionGetIniStr(ByValAppNameAsString,ByValIn_KeyAsString)AsString
OnErrorGoToGetIniStrErr
IfVBA.Trim(In_Key)=""Then
GoToGetIniStrErr
EndIf
DimGetStrAsString
GetStr=VBA.String(128,0)
GetPrivateProfileStringAppName,In_Key,"",GetStr,256,App.Path&"\SourceDB.ini"
GetStr=VBA.Replace(GetStr,VBA.Chr(0),"")
IfGetStr=""Then
GoToGetIniStrErr
Else
GetIniStr=GetStr
GetStr=""
EndIf
ExitFunction
GetIniStrErr:
Err.Clear
GetIniStr=""
GetStr=""
EndFunction
PublicFunctionWriteIniStr(ByValAppNameAsString,ByValIn_KeyAsString,ByValIn_DataAsString)AsBoolean
OnErrorGoToWriteIniStrErr
WriteIniStr=True
IfVBA.Trim(In_Data)=""OrVBA.Trim(In_Key)=""OrVBA.Trim(AppName)=""Then
GoToWriteIniStrErr
Else
WritePrivateProfileStringAppName,In_Key,In_Data,App.Path&"\SourceDB.ini"
EndIf
ExitFunction
WriteIniStrErr:
Err.Clear
WriteIniStr=False
EndFunction
->标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 取得WAV文件信息 2018-06-17
- VBCOM基础讲座之编译的实例选项 2018-06-17
- 利用API创建文件目录 2018-06-17
- 如何用TextBox打开和保存文件 2018-06-17
- 转换长短文件名 2018-06-17
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash