找回密码
 加入
搜索
查看: 1799|回复: 7

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

  [复制链接]
发表于 2018-2-2 14:53:28 | 显示全部楼层 |阅读模式
本帖最后由 ipmitool 于 2018-2-7 09:49 编辑

testconfig.txt
[0001]
A1
A2
A3

[0002]
B1
B2
B3

[0003]
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
发表于 2018-2-2 16:47:07 | 显示全部楼层
首先给你纠正你的错别字!也是现在的人普遍的(在、再不分)
发表于 2018-2-4 20:23:05 | 显示全部楼层
回复 4# ipmitool


   主要是还不够理解。


你能否把需要的 结果 怎么在 GUI 上列出来,给发出来一下。
 楼主| 发表于 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

评分

参与人数 1金钱 +10 收起 理由
ipmitool + 10 厲害的哥

查看全部评分

 楼主| 发表于 2018-2-6 08:43:49 | 显示全部楼层
回复 5# 绿色风


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

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

[dmesg]
1
2
3

[Smartctl]
4
5
6

[Anna]
7
8
9
发表于 2018-2-6 21:29:38 | 显示全部楼层
本帖最后由 绿色风 于 2018-2-6 21:32 编辑

回复 6# ipmitool


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

[这里是根]





只能按你这样子来呀。


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




去五楼去,给你修好的了

评分

参与人数 1金钱 +40 收起 理由
ipmitool + 40 學習了

查看全部评分

 楼主| 发表于 2018-2-7 09:49:41 | 显示全部楼层
回复 7# 绿色风


    哈哈哈, 大哥, 小弟我學習了...厲害厲害!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-16 20:33 , Processed in 0.086394 second(s), 25 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表