DOS下的>>用au3 怎么写?【已解决】
本帖最后由 love5173 于 2011-4-11 23:59 编辑DOS下的“>>”命令简洁好用,我没看见有这个功能的函数啊!
FileWrite ( "文件句柄/文件名", "文本/数据" ) 需要打开文本文件
_FileWriteToLine($sFile, $iLine, $sText [, $fOverWrite = 0])要指定行,如果我的程序关闭再打开的时候变量肯定又恢复了,达不到“>>”的效果!
我现在是用的AU3调用dos命令来实现的,AU3有类似的函数吗? 本帖最后由 mozha 于 2011-2-3 13:14 编辑
源于提问的智慧:
1:Run(@ComSpec & ' /c dir>d:\dir.txt',"", @SW_HIDE)
2:#include <Process.au3>
$rc = _RunDos("start Http://www.autoitx.com") 本帖最后由 netegg 于 2011-2-3 15:39 编辑
不是我中文学的太差就是楼主的中文使用的过于高级,居然没看懂
如果是追加不是很简单吗 fileopen($file,1) 留个脚印,备用 本帖最后由 lixiaolong 于 2011-2-3 20:35 编辑
回复 1# love5173
就是看你用什么模式打开文件,好好看帮助就可以明白.
0 = 只读模式(默认)
1 = 写入模式(附加数据到文件尾部)
2 = 写入模式(删除之前的内容)
DOS命令echo 你好>>test.txtau3这么写$file = FileOpen("test.txt", 1);附加数据到文件尾部
FileWrite($file, "你好")
FileClose($file)DOS命令echo 你好>test.txtau3这么写$file = FileOpen("test.txt", 2);删除之前的内容
FileWrite($file, "你好")
FileClose($file)DOS命令echo 你好>>test.txt
echo 再见>>test.txtau3这么写$file = FileOpen("test.txt", 1);附加数据到文件尾部
FileWrite($file, "你好")
FileWrite($file, "再见")
FileClose($file) 别笑话我好么,我知错了我以后会好好看说明的 回复 6# love5173
我没那个意思,请你别介意.
大家共同学习. 李小龙,大哥,>> 有回车的作用自动换行的, 我用你教的结果都追尾了,而且看起来没我直接调用DOS来的语言简洁,你来解释{:1_564:} 本帖最后由 lixiaolong 于 2011-2-5 17:58 编辑
回复 8# love5173
FileWrite函数没有自动添加换行的功能.
没有的功能只能自己添加.
换行我一直用@CRLF,知道这些你可以自己定义函数(Func).
我写了一个请你参考
用法:
$File = @ScriptDir & "\test.txt"
Dos_FileWrite($File, '>>', "你好");附加数据到文件尾部
Dos_FileWrite($File, '>', "再见");删除之前的内容
Func Dos_FileWrite($Dos_File, $Frag, $Dos_Text)
If $Frag = '>>' Then
$Frag = 1
FileWrite(FileOpen($Dos_File, $Frag), $Dos_Text & @CRLF)
ElseIf $Frag = '>' Then
$Frag = 2
FileWrite(FileOpen($Dos_File, $Frag), $Dos_Text & @CRLF)
Else
MsgBox(16, '警告', '输入方式错误!')
EndIf
FileClose($Dos_File)
EndFunc ;==>Dos_FileWrite
这样写很像dos命令吧,呵呵
$File = @ScriptDir & "\test.txt"
echo("你好", '>>', $File)
echo("再见", '>>', $File)
Func echo($Dos_Text, $Frag, $Dos_File)
If $Frag = '>>' Then
$Frag = 1
FileWrite(FileOpen($Dos_File, $Frag), $Dos_Text & @CRLF)
ElseIf $Frag = '>' Then
$Frag = 2
FileWrite(FileOpen($Dos_File, $Frag), $Dos_Text & @CRLF)
Else
MsgBox(16, '警告', '输入方式错误!')
EndIf
FileClose($Dos_File)
EndFunc ;==>echo 您觉得把换行放在第二句的开始好呢 还是第一句的结束? 回复 10# love5173
放在哪里都可以,看怎么写代码.
像我写的函数应该写在后面. 帮我写个Access 的数据库脚本 最简单的就可以 我参考下语法什么的 英文我看不懂 好多次看楼主的帖子,感受和3楼一样。
楼主真该多去看看那些智慧的提问帖。
比如这位:http://www.autoitx.com/forum.php?mod=viewthread&tid=21592&highlight=%B4%F2%B0%FC
上图上代码,简单、明了、到位的描述,将自己的问题阐述得清清楚楚,这样便于他人能更快更准的帮你找出问题所在,而不是把时间都花在猜问题上了。
没别的意思,希望楼主莫见怪,还是那句话,指出你的不足,是希望你能更好,新年快乐。 楼上的大哥,说得有道理 lixiaolong水木子 支持上面两位
页:
[1]