kk_lee69 发表于 2015-1-10 16:25:33

如何使用FileWriteLine 添加 一行 到档案的最后一行呢??[功能正常误会一场][已解决]

本帖最后由 kk_lee69 于 2015-1-10 20:06 编辑

如何使用FileWriteLine 添加 一行 到档案的最后一行呢??

有个 现象 不知道是我 一直没发现还是有什么问题??有点怪异
那就是 使用 下面语法

FileWriteLine(@ScriptDir&"\问题区\错误LOG.TXT","时间: "&@YEAR&@MON&@MDAY&" "&@HOUR&":"&@MIN)


这样其实 可以在 执行的时候 达到 记录的功能 把每次的时间 都记录到文件的 最后面一行

但是只要我离开了程序,再重新执行的时候 ,原本上次的纪录就会
被重新洗掉,然后又从档案的第一行开始纪录??

有没有办法 可以 单存的 一直在某个 固定的TXT档案中 一直的往最后一行添加数据呢??

afan 发表于 2015-1-10 16:49:58

FileWrite(@ScriptDir & "\问题区\错误LOG.TXT", @CRLF & "时间: " & @YEAR & @MON & @MDAY & " " & @HOUR & ":" & @MIN)

netegg 发表于 2015-1-10 18:19:58

FileOpen ( "文件名", 1)

kk_lee69 发表于 2015-1-10 19:25:48

回复 2# afan

不行ㄟ~~~ 一樣是 第二次 執行程式的時候 會覆蓋掉原本上次的紀錄

半芯竹 发表于 2015-1-10 19:46:10

我这边测试了好多次,都没发现异常。。是不是你的版本问题?

kk_lee69 发表于 2015-1-10 19:56:39

本帖最后由 kk_lee69 于 2015-1-10 20:04 编辑

回复 5# 半芯竹

哈哈 .....剛剛測試了找到問題了

是我搞了烏龍......SORRY
原因 就是下面這個語法 .......

IF (StringMid(FileGetTime(@ScriptDir&"\問題區\錯誤LOG.TXT",1,1),1,6)+0) <= ((@YEAR&@MON)+0) Then FileDelete(@ScriptDir&"\問題區\錯誤LOG.TXT")

這個的語法 是打算 讀取 檔案的創立時間 如果創立時間 距今大約 兩個月左右 就砍掉檔案.....

意思是 這個 LOG 檔案 大概只要保留兩個月 ....

就是這段 語法 出問題 ....................原本 測試的時候 為了 實際測試 檔案會不會被刪除重建   所以 本來應該加 2 的 地方 改成 加 0如右邊的語法....(StringMid(FileGetTime(@ScriptDir&"\問題區\錯誤LOG.TXT",1,1),1,6)+0)

這樣 可以馬上測試檔案有沒有被刪除.........

測試完畢忘了改回來.............. 造成烏龍.....還麻煩到各位真不好意思感謝幫忙!!
页: [1]
查看完整版本: 如何使用FileWriteLine 添加 一行 到档案的最后一行呢??[功能正常误会一场][已解决]