找回密码
 加入
搜索
查看: 1709|回复: 4

[AU3基础] _FileWriteToLine怎么用?[已解决]

[复制链接]
发表于 2018-5-2 20:42:29 | 显示全部楼层 |阅读模式
本帖最后由 cashiba 于 2018-5-2 23:38 编辑
#include <File.au3>

$sText = _
'你说你喜欢雨,' & @CRLF & _
'但是下雨的时候你却撑开了伞;' & @CRLF & _
'你说你喜欢阳光,' & @CRLF & _
'但当阳光播撒的时候,' & @CRLF & _
'你却躲在阴凉之地;' & @CRLF & _
'你说你喜欢风,' & @CRLF & _
'但清风扑面的时候,' & @CRLF & _
'你却关上了窗户.' & @CRLF & _
'我害怕你对我也是如此之爱.' & @CRLF & _
''
$file = FileSaveDialog('保存文件..', '', 'Text Files (*.txt)|All Files (*.*)')
If $file = '' Then Exit
_FileCreate($file)
If _FileWriteToLine($file, 1, $sText, 1) = 1 Then
        MsgBox(32,"", '成功创建文件!')
Else
        MsgBox(16,"", '未能创建文件!' & @CRLF & "原因为:" & @error & @CRLF & _
        '1 - 文件行数小于 $iLine 参数值' & @CRLF & _
        "函数语法:_FileWriteToLine($sFilePath,$iLine,$sText[,$bOverWrite = False])")
EndIf
如上......会出错....
发表于 2018-5-2 21:44:15 | 显示全部楼层
不明白为何要这样使用 _FileWriteToLine, 并且你明白 _FileWriteToLine 失败的原因(20 - 22行)

换个函数不行吗....
#include <File.au3>

$sText = _
'你说你喜欢雨,' & @CRLF & _
'但是下雨的时候你却撑开了伞;' & @CRLF & _
'你说你喜欢阳光,' & @CRLF & _
'但当阳光播撒的时候,' & @CRLF & _
'你却躲在阴凉之地;' & @CRLF & _
'你说你喜欢风,' & @CRLF & _
'但清风扑面的时候,' & @CRLF & _
'你却关上了窗户.' & @CRLF & _
'我害怕你对我也是如此之爱.' & @CRLF & _
''
$file = FileSaveDialog('保存文件..', '', 'Text Files (*.txt)|All Files (*.*)')
If $file = '' Then Exit
_FileCreate($file)
FileWriteLine($file, $sText)
发表于 2018-5-2 22:02:58 | 显示全部楼层
或者你事先创建一个至少 10 个空行的文件,并且注释 16 行......

评分

参与人数 1金钱 +25 收起 理由
cashiba + 25

查看全部评分

 楼主| 发表于 2018-5-2 23:11:36 | 显示全部楼层
本帖最后由 cashiba 于 2018-5-2 23:14 编辑
或者你事先创建一个至少 10 个空行的文件,并且注释 16 行......
131738 发表于 2018-5-2 22:02

源码来自于:http://www.autoit3.cn/forum.php?mod=viewthread&tid=2955
也是转自于官方论坛。
Filewriteline用起来倒是没有问题
就是对这个_FileWriteToLine自定义函数不熟悉,不知道有什么用处,好像优点在于可以某行覆盖或插入?
不过感觉不太好用,连官方的源码都运行有误.....
Func _ExportList()
$AllItems = _GetListItems($ListView1)
$file = FileSaveDialog('Save the tasks..', '', 'Text Files (*.txt)|All Files (*.*)')
if $file = '' then Return -1
_FileCreate($file)
if _FileWriteToLine($file, 1, $AllItems, 1) = 1 then
msgbox(32, $Title, 'Succesfully created task file..'&@CRLF&'Path: '&$file)
Else
msgbox(16, $Title, 'Error creating task file..'&@CRLF&'Path: '&$file)
EndIf
EndFunc
所以单独测试一下这个函数....
 楼主| 发表于 2018-5-2 23:30:49 | 显示全部楼层
感谢老大.....
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-12-24 02:07 , Processed in 0.070922 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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