当前位置: 首页 > 图文教程 > 网络编程 > ASP > 用ASP读INI配置文件的函数

ASP
asp数个使用技巧
存储过程里的递归 实现方法
非常不错的列出sql服务器上所有数据库的asp代码
防范ASP木马的十大基本原则强列建议看下
雷客图ASP站长安全助手的ASP木马查找功能
防止别人盗链的好方法推荐
图片的入库与读取的方法
用asp实现无组件生成验证码的方法2种
用asp实现检测文件编码
[asp]怎么添加验证码的解决方法
ASP文章系统解决方案实现上一页下一页
ASP编程入门进阶(三):接触脚本程序
ASP编程入门进阶(四):内置对象Request
ASP编程入门进阶(五):内置对象Response
ASP编程入门进阶(六):Cookies讲座
ASP编程入门进阶(八):内置对象Session
ASP编程入门进阶(九):内置对象Application
ASP编码优化技巧8则
ASP编程入门进阶(十):Global.asa文件
ASP编程入门进阶(十一):Chat聊天程序

用ASP读INI配置文件的函数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 188 ::
收藏到网摘: n/a

 

选择自 mind_1220 的 Blog

要求: 
能够读取按照  INI文件的Section和Key来读出相应的Value。 
比如一个配置文件   
SMSVote.ini 
--------------------------------- 
[SMSVote] 
Server=(local) 
DB=SMSVote 
User=sa 
PassWord=123 
[DB2Vote] 
Server=192.168.0.1 
DB=DB2 
User=sa 
PassWord= 
--------------------------------- 
 
 
主体程序(方法)  : 
 
inifile.asp 
----------------------------------------------- 
<% 
set  IniFileDictionary  =  CreateObject("Scripting.Dictionary") 
 
Sub  IniFileLoad(ByVal  FilSpc) 
   IniFileDictionary.RemoveAll 
   FilSpc  =  lcase(FilSpc) 
   if  left(FilSpc,  1)  =  "p"  then 
       'Physical  path 
       PhyPth  =  mid(FilSpc,  instr(FilSpc,  "=")  +  1) 
   else 
       'Virtual  path 
       PhyPth  =  Server.MapPath(mid(FilSpc,  instr(FilSpc,  "=")  +  1)) 
   end  if 
 
   set  FilSys  =  CreateObject("Scripting.FileSystemObject") 
   set  IniFil  =  FilSys.OpenTextFile(PhyPth,  1) 
   do  while  not  IniFil.AtEndOfStream 
       StrBuf  =  IniFil.ReadLine 
       if  StrBuf  <>  ""  then 
           'There  is  data  on  this  line 
           if  left(StrBuf,  1)  <>  ";"  then 
               'It's  not  a  comment 
               if  left(StrBuf,  1)  =  "["  then 
                   'It's  a  section  header 
                   HdrBuf  =  mid(StrBuf,  2,  len(StrBuf)  -  2) 
               else 
                   'It's  a  value 
                   StrPtr  =  instr(StrBuf,  "=") 
                   AltBuf  =  lcase(HdrBuf  &  "  ¦"  &  left(StrBuf,  StrPtr  -  1)) 
                   do  while  IniFileDictionary.Exists(AltBuf) 
                       AltBuf  =  AltBuf  &  "_" 
                   loop 
                   IniF