xunyar 发表于 2009-9-28 02:12:35

如何读取正确的INI文件内容?

我想做个时间同步工具,但是在写服务器地址的时候发现有些地址失效,但却不能读取INI文件第二条地址?
我的INI文件是win.ini,内容:
[地址]
www.baidu.com=www.baidu.com ;第一次错误
time-nw.nist.gov=time-nw.nist.gov

请问我怎样判断第一条错误,然后获取第二条地址呢?又或者第二条错误,读取第第三条地址呢?

RobertLi 发表于 2009-9-28 08:38:06

将读取信息MsgBox 出来看看是什么信息后,估计写成

IP1=www.baidu.com
IP2=time-nw.nist.gov
一定可以!

xunyar 发表于 2009-9-28 12:45:38

你可能还不明白我的意思,我的意思是写一个AU3程序可以读取win.ini里面的内容,当读取IP1=www.baidu.com 这条失败时,自动读取下一条,这样啊!

ZEROBOYS 发表于 2009-10-19 19:04:17

本帖最后由 ZEROBOYS 于 2009-10-19 19:52 编辑

沒有所謂的成功與失敗吧...

INI 只要讀取的到,就是有資料(不分你是網址還是任何字串),讀取不到 那也僅要IF 即可解決
你所謂的失敗? 是指讀取完畢,網路載入失敗?還是單純讀這字串的失敗? 這有點定義模糊...

而且將你發文反覆讀了N次,在基本邏輯概念是否為?
一、製作時間同步器
二、當伺服器1沒訊號、無法使用時,經過數秒後>>>讀取伺服器2...繼續時間驗證

倘若思維邏輯為上,樓上的回覆則是正確無誤的,因為你發文的INI語法,就不太順暢!
調適為樓上的模式,是你第一步驟該修飾的...

接續而來的...你應該是開始玩PING去驗證伺服器是否正確、存在,再製作對應的迴圈...
並竟INI讀取這玩意,只要你規格正確,就是你給他讀什麼就讀什麼...
沒有對與錯之分...頂多是一個讀取失敗返回0與1

3# xunyar

qq1244521 发表于 2009-10-21 01:46:33

While 或 Do循环应该可以吧你的具体要干什么谁也不知道 源码也没看见 不知道
你是要改AU3文件 还是INI文件

wisly 发表于 2009-10-22 17:04:36

用$aIPAddress = IniReadSection ('win.ini', 'IPAddress')先全部读到这个数组,然后用for循环就可以了

minterz 发表于 2009-11-9 12:56:22

ini读取失败的时候,会自动赋值一个你设置的默认值
如,$ip = iniread("win.ini","ip","ip1","xxxx")
只需要检查$ip是否等于“xxxx”即可判断ini读取正确与否。
页: [1]
查看完整版本: 如何读取正确的INI文件内容?