ipmitool 发表于 2018-2-2 14:53:28

[已解决]如何把抓出來的文字依序顯示再GUI上面

本帖最后由 ipmitool 于 2018-2-7 09:49 编辑

testconfig.txt
A1
A2
A3


B1
B2
B3


C1
C2
C3
#include <Array.au3>
#include <File.au3>
#include <MsgBoxConstants.au3>


Local $path = @ScriptDir&"\"
Local $aFileList = _FileListToArray($path, "testconfig.txt")


If @error = 1 Then
      MsgBox($MB_SYSTEMMODAL, "", "Path was invalid.")
      Exit
EndIf
If @error = 4 Then
      MsgBox($MB_SYSTEMMODAL, "", "No file(s) were found.")
      Exit
EndIf
; Display the results returned by _FileListToArray.
;_ArrayDisplay($aFileList, "$aFileList")



Local $i, $aRetArray
For $i = 1 To UBound($aFileList) - 1 Step 1
      _FileReadToArray($aFileList[$i], $aRetArray, 1)

      _ArrayDisplay($aRetArray, "$aRetArray")

      Local $j
      For $j = 1 To UBound($aRetArray) - 1
                Local $start = StringInStr($aRetArray[$j], "[")    ;这里是你需要查找的错误字符

                If $start <> "" Then
                        MsgBox(0, "提示", "在文件" & $aFileList[$i] & "中,第" & $j & "行,第" & $start & "个字符" & @CRLF & "有字符[")
                                                $Linestring1=FileReadLine("testconfig.txt",$j+1)
                                                $Linestring2=FileReadLine("testconfig.txt",$j+2)
                                                $Linestring3=FileReadLine("testconfig.txt",$j+3)
                                                MsgBox(0, "Msg", $Linestring1,1)
                                                MsgBox(0, "Msg", $Linestring2,1)
                                                MsgBox(0, "Msg", $Linestring3,1)
                EndIf
      Next
Next

chishingchan 发表于 2018-2-2 16:47:07

首先给你纠正你的错别字!也是现在的人普遍的(在、再不分)

绿色风 发表于 2018-2-4 20:23:05

回复 4# ipmitool


   主要是还不够理解。


你能否把需要的 结果 怎么在 GUI 上列出来,给发出来一下。

ipmitool 发表于 2018-2-5 19:06:27

回复 5# 绿色风


您好, 大概像這張圖這樣子...
抓到標題就列出底下的文字這樣...

绿色风 发表于 2018-2-5 21:17:24

本帖最后由 绿色风 于 2018-2-6 21:32 编辑

回复 4# ipmitool


   

MsgBox(0, "得到的数据", _OLO("1.ini"))


Func _OLO($md)
        ;要打开的文件
        Local $file = FileOpen($md, 0)
        ; 检查打开的文件是否可读
        If $file = -1 Then
;~   MsgBox(4096, "错误", "不能打开文件.")
                Return 0;
        EndIf
        ; 每次读取一行文本,直到文件结束.
        Local $sDat , $LF;修好了,修好了;修好了,修好了;修好了,修好了;修好了,修好了;修好了,修好了
        While 1
                Local $line = FileReadLine($file)
                If @error = -1 Then ExitLoop ;读到最后一行退出
                If StringLeft($line, 1) = "[" Then
                        If $sDat = "" Then ;这里的if 用于判断是否在第一位置。不在第一位置就不用加 回车回车
                                $sDat = StringReplace(StringReplace($line, "[", ""), "]", "")
                        Else
                                $sDat = $sDat & @CRLF & @CRLF & StringReplace(StringReplace($line, "[", ""), "]", "")
                        EndIf
                        $LF = @CRLF ;用于对二级数据的换行
                ElseIf $line <> "" Then
                        $sDat = $sDat & $LF & $line
                        $LF = @TAB;用于二级数据的中间分隔
                EndIf
        WEnd
        FileClose($file)
        Return $sDat ;得到的数据
EndFunc   ;==>_OLO

ipmitool 发表于 2018-2-6 08:43:49

回复 5# 绿色风


    好厲害哦, 不過讀這種內容就不行了耶...也是一樣要讀底下的東西竟然就讀不出來了...SIP
AA
MSFT72810057
24A
0.20A
555

7
1665
0
0
172.20.0.41
kelly
12 hrs 18 min
201801310805
sys_stress


1
2
3


4
5
6


7
8
9

绿色风 发表于 2018-2-6 21:29:38

本帖最后由 绿色风 于 2018-2-6 21:32 编辑

回复 6# ipmitool


    大哥呀,你给的源不是这种好不。肯定不能通用呀

[这里是根]





只能按你这样子来呀。


根都没有,子肯定就不读了呀


{:face (189):}

去五楼去,给你修好的了

ipmitool 发表于 2018-2-7 09:49:41

回复 7# 绿色风


    哈哈哈, 大哥, 小弟我學習了...厲害厲害!
页: [1]
查看完整版本: [已解决]如何把抓出來的文字依序顯示再GUI上面