Followers 0

# why does _FileWriteToLine not work

## 8 posts in this topic

#1 ·  Posted (edited)

some how this does not work any one know why ?

#include <File.au3>

Global $sIniFile = FileOpen(@ScriptDir & "test.txt", 0) ;Example: Write to line 3 of c:\test.txt REPLACING line 3 _FileWriteToLine($sIniFile, 3, "my replacement for line 3", 1)
;Example: Write to line 3 of c:\test.txt NOT REPLACING line 3
_FileWriteToLine($sIniFile, 3, "my insertion", 0) Edited by Merchants #### Share this post ##### Link to post ##### Share on other sites some how this does not work any one know why ? #include <File.au3> Global$sIniFile = FileOpen(@ScriptDir & "test.txt", 0)
;Example: Write to line 3 of c:\test.txt REPLACING line 3
_FileWriteToLine($sIniFile, 3, "my replacement for line 3", 1) ;Example: Write to line 3 of c:\test.txt NOT REPLACING line 3 _FileWriteToLine($sIniFile, 3, "my insertion", 0)

Try putting a path in there.

Untested:

#include <File.au3>

Global $sIniFile = FileOpen(@ScriptDir & "test.txt", 0) ;Example: Write to line 3 of c:\test.txt REPLACING line 3 _FileWriteToLine(@ScriptDir & "/" &$sIniFile, 3, "my replacement for line 3", 1)
;Example: Write to line 3 of c:\test.txt NOT REPLACING line 3
_FileWriteToLine(@ScriptDir & "/" & $sIniFile, 3, "my insertion", 0) #### Share this post ##### Link to post ##### Share on other sites some how this does not work any one know why ? #include <File.au3> Global$sIniFile = FileOpen(@ScriptDir & "test.txt", 0)
;Example: Write to line 3 of c:\test.txt REPLACING line 3
_FileWriteToLine($sIniFile, 3, "my replacement for line 3", 1) ;Example: Write to line 3 of c:\test.txt NOT REPLACING line 3 _FileWriteToLine($sIniFile, 3, "my insertion", 0)

If you were just using FileWrite() or FileWriteLine()...

In your FileOpen, your flag is 0 which means open the file in read-only mode. You need to use one of the write modes, check help file for reference.

Also, @ScriptDir doesn't include a trailing backslash \ so you'll need to add one prior to "test.txt".

But since you're using _FileWriteToLine() you would need to specify a hard path for the first parameter like Werty said, so just replace your Global $sIniFile line to: Global$sIniFile = @ScriptDir & "\text.txt"

It would be more efficient to assign the file path to your $sIniFile variable then continue to use$sIniFile instead of the actual path every time you use the _FileWriteToLine function.

##### Share on other sites

tryed all 2 post but still does not work...

##### Share on other sites

Try this:

#include <File.au3>
Global $sIniFile = FileOpen(@ScriptDir & "\test.txt",2) ;=== some lines of text to test: For$i=1 To 10
FileWriteLine($sIniFile,"This is line "&$i)
Next
FileClose($sIniFile) ;=== now your code: ;Example: Write to line 3 of c:\test.txt REPLACING line 3 _FileWriteToLine(@ScriptDir & "\test.txt", 3, "my replacement for line 3", 1) ;Example: Write to line 3 of c:\test.txt NOT REPLACING line 3 _FileWriteToLine(@ScriptDir & "\test.txt", 3, "my insertion", 0) Things you should know first...In the beginning there was only ONE! And zero... Progs: #### Share this post ##### Link to post ##### Share on other sites #6 · Posted (edited) #include <File.au3> Global$sIniFile = @ScriptDir & "\test.txt"
;Example: Write to line 3 of c:\test.txt REPLACING line 3
_FileWriteToLine($sIniFile, 3, "my replacement for line 3", 1) ;Example: Write to line 3 of c:\test.txt NOT REPLACING line 3 _FileWriteToLine($sIniFile, 3, "my insertion", 0)

Br,

UEZ

Edited by UEZ

The own fart smells best!
Her 'sikim hıyar' diyene bir avuç tuz alıp koşma!
¯\_(ツ)_/¯  ٩(●̮̮̃•̃)۶ ٩(-̮̮̃-̃)۶ૐ

##### Share on other sites

Merchants, in your first script you have to pass the file (with path) to the _FileWriteToLine function, not the file handle.

Second, the file must exists - see the @Error in case of failure (that's why I wrote a test file in the begining).

Things you should know first...In the beginning there was only ONE! And zero...

Progs:

##### Share on other sites

i have the info i need here thx