找回密码
 加入
搜索
楼主: ttmv2019sx

[网络通信] 关于文件TXT读行的一个问题请教!【已解决】

[复制链接]
 楼主| 发表于 2021-3-6 17:22:29 | 显示全部楼层
afan 发表于 2021-3-6 14:38
晕 读写文件不是基础中的基础吗…

#include <MsgBoxConstants.au3>
#include <File.au3>
Exe()
Local $fi
Func Exe()
        Local $aArray = FileReadToArray('1.txt')
           Local $iLineCount = @extended
    If @error Then
        MsgBox($MB_SYSTEMMODAL, "", "读取文件时出现错误. @error: " & @error)
    Else
        For $i=($iLineCount - 1) to 0 step -1;
                        MsgBox($MB_SYSTEMMODAL, "", $aArray[$i])

                                        Local $sSource
                        $sSource =$aArray[$i] & @CRLF & $sSource
        Next
                Local $sSource1 = StringRegExpReplace($sSource, '(?m)\v*^\V*\s*\z', '')
                 MsgBox($MB_SYSTEMMODAL, "", $sSource1)

$fi = FileOpen('1.txt', 2)
                 FileWrite($fi, $sSource1)
        FileClose($fi)

        EndIf
EndFunc



原因,只要用到A大,你的这个一句就行了,Local $sSource1 = StringRegExpReplace($sSource, '(?m)\v*^\V*\s*\z', '')   上面是我自个整理出来的,但是就是一直在想怎么删除空行,,我看你的这个命令不光是删除空行???不知道具体是什么意思来的,

发表于 2021-3-6 18:51:36 | 显示全部楼层
ttmv2019sx 发表于 2021-3-6 17:22
#include
#include
Exe()

正则了解下
发表于 2021-3-6 22:12:54 | 显示全部楼层
不用正则实现的代码。
#include <File.au3>
$sFilePath = @ScriptDir&"\test.txt"
If FileExists($sFilePath) Then FileDelete($sFilePath)
FileWrite($sFilePath, "123"&@CRLF&"456"&@CRLF&"789"&@CRLF)
$Lin = _FileCountLines ( $sFilePath )
MsgBox(0,"最后一行",FileReadLine($sFilePath, -1))
_FileWriteToLine ( $sFilePath, $Lin, "",  True  )
ShellExecute($sFilePath)
 楼主| 发表于 2021-3-8 16:39:37 | 显示全部楼层
gyp2000 发表于 2021-3-6 22:12
不用正则实现的代码。
#include
$sFilePath = @ScriptDir&"\test.txt"

谢谢你的回答 。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-5-19 14:53 , Processed in 0.082218 second(s), 14 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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