網上搜的js讀取配置文件都能搜到的:
文件內容形式如下(形式關乎正則表達式如何匹配,=號前後的空格都會導致匹配失敗):
[plugin_page_search]
wholeword=0
matchcase=1
hightlight=1
total=1
[data]
up=85
down=5
代碼如下:
var fso = new ActiveXObject("Scripting.FileSystemObject");
var f = fso.OpenTextFile("D:\\Useful Stuff\\Javascript\\mytest.txt",1); //此處涉及到文件的讀取,應提前判斷文件是否存在
var s = "";
while (!f.AtEndOfStream)
{
s+= f.ReadLine();
}
f.Close();
function getINI(item,key)
{
new RegExp("\\["+item+"\\](.+)").exec(s);
var str=RegExp.$1;
var reg2=/(\w+)=(\d+)/g; //網上大部分代碼都沒有這個g,導致匹配第二項時失敗,/g匹配全文
//要是=號前後有多餘的空格,此時reg2=/(\w+)[ ]*=[ ]*(\d+)/g;
var keyValue={};
str.replace(reg2,function(a,b,c){
keyValue[b]=c;
});
return keyValue[key];
}
alert(getINI("data","up"));
alert(getINI("plugin_page_search","hightlight"));