Добавяне на текст в края на ред

Работя с AutoIt и се чудех, че има метод, който мога да използвам за добавяне на низ от текст в края на ред в текстов файл. Преглеждах всички форуми за autoit и има много отговори, които са наистина близки, но не намерих решение, което действително да работи за мен.

Функцията:

FileWriteLine($LOG, "FText")  

просто добавя цял нов ред в долната част, докато функцията:

_FileWriteToLine($LOG, 1, "FText", 0)

добавя буквите "FText" в началото на първия ред в лог файла.

Има ли някакъв начин да добавя този текст в края на първия ред, вместо в началото?


person Dirty Harry Potter    schedule 06.07.2014    source източник


Отговори (2)


Никога не съм се сблъсквал с този проблем, но само като си помисля за него, какво ще кажете да прочетете целия ред, да го съхраните в променлива, да добавите допълнителния тест, който искате в края на реда и след това да напишете новия ред, тъй като е модифициран, замествайки старата линия???

person user2530266    schedule 07.07.2014
comment
Това ще го направи. Благодаря ти! - person Dirty Harry Potter; 07.07.2014

Можете да използвате функцията FileWrite: документация за FileWrite

Можете да създадете своя собствена функция за писане на файл, която да включва отваряне, писане и затваряне на файла по следния начин:

Func WriteToLog($FileName, $Value)
  $FileHandle = FileOpen($FileName, 1) ; 1 = append mode

  If $FileHandle <> -1 Then
    FileWrite($FileHandle, $Value)
  EndIf

  FileClose($FileHandle)
EndFunc

След това, използвайки вашия пример и приемайки, че $LOG е името на файла за вашия лог файл, можете просто да извикате функцията си, когато трябва да регистрирате нещо:

WriteToLog($LOG, "FText")
person Dale M    schedule 07.07.2014