;FileWriteToLine.au3 ;~ #include ;~ #include ;~ #include #include "APIRW.au3" ;~ #include "APIRWroomsWrong.au3" Local $s_Copy = @ScriptDir & "\copy.txt", $textInsert = "zz" $s_Test = FileOpenDialog("Choose File", @ScriptDir, "Files (*.exe;*.dll;*.txt)", 1) FileCopy($s_Test, $s_Copy, 9) ;~ $i_WriteLineNum=_FileCountLines($s_Test)/2 $timer = TimerInit() $i_WriteLineNum = Int(_FileCountLines($s_Test)) ConsoleWrite("_FileCountLines time=" & TimerDiff($timer) & @LF) ;~ $i_WriteLineNum = 3 $timer = TimerInit() $ar_CountLines = _FileCountLinesBinary ($s_Copy);, $i_LineNumber) ConsoleWrite("_FileCountLinesBinary time=" & TimerDiff($timer) & @LF) ;~ _ArrayDisplay($ar_CountLines,"$ar_CountLines") ;~ ;Example: Write to line 3 of c:\test.txt REPLACING line 3 ;~ ;========================================================================================replacementtime FileCopy($s_Test, $s_Copy, 9) $timer = TimerInit() _FileWriteToLine($s_Copy, $i_WriteLineNum, "line " & $i_WriteLineNum & " replacement ", 1) ConsoleWrite("_FileWriteToLine replacementtime=" & TimerDiff($timer) & @LF) If _FileCountLines($s_Test) < 500 Then RunWait("Notepad.exe " & $s_Copy, @ScriptDir, @SW_SHOW) ;========================================================================================APIreplacementtime FileCopy($s_Test, $s_Copy, 9) $timer = TimerInit() $ar_CountLines = __FileWriteToLine ($s_Copy, $i_WriteLineNum, "line " & $i_WriteLineNum & " APIreplacement ", 1,0) ConsoleWrite("__FileWriteToLine APIreplacementtime=" & TimerDiff($timer) & @LF) ConsoleWrite("$ar_CountLines[0]=" & $ar_CountLines[0] & @LF) If _FileCountLines($s_Test) < 500 Then RunWait("Notepad.exe " & $s_Copy, @ScriptDir, @SW_SHOW) ;======================================================================================== ordinary insertiontime FileCopy($s_Test, $s_Copy, 9) $timer = TimerInit() _FileWriteToLine($s_Copy, $i_WriteLineNum, "ord line " & $i_WriteLineNum & " insertion ", 0) ConsoleWrite("_FileWriteToLine insertiontime=" & TimerDiff($timer) & @LF) If _FileCountLines($s_Test) < 500 Then RunWait("Notepad.exe " & $s_Copy, @ScriptDir, @SW_SHOW) ;======================================================================================== API insertiontime FileCopy($s_Test, $s_Copy, 9) $timer = TimerInit() __FileWriteToLine ($s_Copy, $i_WriteLineNum, "APIline " & $i_WriteLineNum & " insertion ", 0,0) ConsoleWrite("_FileWriteToLine APIinsertiontime=" & TimerDiff($timer) & @LF) If _FileCountLines($s_Test) < 500 Then RunWait("Notepad.exe " & $s_Copy, @ScriptDir, @SW_SHOW) ;~ ;========================================================================================APIreplacementtimeSHORT FileCopy($s_Test, $s_Copy, 9) $timer = TimerInit() __FileWriteToLine ($s_Copy, $i_WriteLineNum, StringLeft("line " & $i_WriteLineNum & " APISHORT ", 3), 1,0, 0, 1) ConsoleWrite("_FileWriteToLine APIreplacementtimeSHORT=" & TimerDiff($timer) & @LF) If _FileCountLines($s_Test) < 500 Then RunWait("Notepad.exe " & $s_Copy, @ScriptDir, @SW_SHOW) ;~ ;========================================================================================APIreplacementtimeLONG FileCopy($s_Test, $s_Copy, 9) $timer = TimerInit() __FileWriteToLine ($s_Copy, $i_WriteLineNum, "line " & $i_WriteLineNum & " APILONGreplacement " & _StringRepeat("zx zx", 9), 1,0, 1) ConsoleWrite("_FileWriteToLine APIreplacementtimeLONG=" & TimerDiff($timer) & @LF) If _FileCountLines($s_Test) < 500 Then RunWait("Notepad.exe " & $s_Copy, @ScriptDir, @SW_SHOW)