ASP读取ini文件的实现方法
INI是微軟Windows操作系統中的文件擴展名。這些字母表示初始化。正如該術語所表示的,INI文件被用來對操作系統或特定程序初始化或進行參數設置。ini文件可以存儲很多數據,用來配置應用軟件以實現不同用戶的要求,那如何用ASP來讀取ini文件呢?聚友提供一段代碼,可以通過這段代碼來實現讀取ini文件,代碼如下:
<%??
? 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??
????????????????????? IniFileDictionary.Add?? AltBuf,?? mid(StrBuf,?? StrPtr?? +?? 1)??
????????????????? end?? if??
????????????? end?? if??
????????? end?? if??
????? loop??
????? IniFil.Close??
????? set?? IniFil?? =?? nothing??
????? set?? FilSys?? =?? nothing??
? End?? Sub??
???
? Function?? IniFileValue(ByVal?? ValSpc)??
????? dim?? ifarray??
????? StrPtr?? =?? instr(ValSpc,?? "|")??
????? ValSpc?? =?? lcase(ValSpc)??
????? if?? StrPtr?? =?? 0?? then??
????????? 'They?? want?? the?? whole?? section??
????????? StrBuf?? =?? ""??
????????? StrPtr?? =?? len(ValSpc)?? +?? 1??
????????? ValSpc?? =?? ValSpc?? +?? "|"??
????????? ifarray?? =?? IniFileDictionary.Keys??
????????? for?? i?? =?? 0?? to?? IniFileDictionary.Count?? -?? 1??
????????????? if?? left(ifarray(i),?? StrPtr)?? =?? ValSpc?? then??
????????????????? 'This?? is?? from?? the?? section??
????????????????? if?? StrBuf?? <>?? ""?? then??
????????????????????? StrBuf?? =?? StrBuf?? &?? "~"??
????????????????? end?? if??
????????????????? StrBuf?? =?? StrBuf?? &?? ifarray(i)?? &?? "="?? &?? IniFileDictionary(ifarray(i))??
????????????? end?? if??
????????? next??
????? else??
????????? 'They?? want?? a?? specific?? value??
????????? StrBuf?? =?? IniFileDictionary(ValSpc)??
????? end?? if??
????? IniFileValue?? =?? StrBuf??
? End?? Function??
? %>
將上面的代碼保存為inifile.asp,用如下樣子的代碼來讀取ini,
<!--#include file="inifile.asp"-->?
<%
call IniFileLoad("test.ini")
' 設定包含文件的存放路徑
StrBuf = IniFileValue("OEMFiles|OEMDriverFile1")
response.write strbuf & now()
%>
總結
以上是生活随笔為你收集整理的ASP读取ini文件的实现方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ASP程序中调用函数Now()显示上午下
- 下一篇: ASP读取ACCESS数据库随机记录的方