JanetTerra
Aug 28, 2006
- "Typos (1) c path c\ to c:\ x5, (2) the -> then x2, (3) completion of filedialog command x2 (4) newvilename$ -> newfilename$ x1"
Copying, moving, delecting and renaming files
-Table of Contents
Copying a file
Below the method by which a file can be copied using API calls is shown:calldll #kernel132, "CopyFileA",_The currentfilename$ is the string that contains the name of the file you want to make a copy of. The copyfilename$ is the file name for the copy. The bFailIfExists tells the computer what to do if the file name for the copy is already used. If set to 0 the copy will overwrite the current file with the same name. If set to 1 the copy does not overwrite the file. The code below shows how to copy a file into a different folder with the same file name:
currentfilename$ as ptr,_ 'the string containing the file to be copied
copyfilename$ as ptr,_ 'the string containing the file name of the copied file
bFailIfExists as boolean,_'1or0'1 or 0
re as boolean'not 0 if copy was successful
let currentfilename$= "c:\text.txt"The code below shows how to make a copy of a file into the same folder with a different filename:
let copyfilename$="c\folder\text.txt""c:\folder\text.txt"
let bFailIfExists= 0
calldll #kernel132, "CopyFileA",_
currentfilename$ as ptr,_
copyfilename$ as ptr,_
bFailIfExists as boolean,_'1or0'1 or 0
re as boolean
if re=0 thenprint,print "copyfailed"
let currentfilename$= "c:\text.txt"
let copyfilename$="c\copyoftext.txt""c:\copyoftext.txt"
let bFailIfExists= 0
calldll #kernel132, "CopyFileA",_
currentfilename$ as ptr,_
copyfilename$ as ptr,_
bFailIfExists as boolean,_
re as boolean
if re=0 thenprint,print "copyfailed"
Remember to include the complete path in the filename.
Moving a file
There are two ways to move a file; using the name command and using API calls.Below the method by which a file can be moved using API calls is shown:
calldll #kernel132, "MoveFileA",_The currentfilename$ is the string that contains the name of the file you want to move. The movefilename$ is the file name for the new location of the file. If the function succeeds, the return value is nonzero. If the function fails, the return value is zero.Points to a null-terminated string that specifies the new name of a file or directory. The new name must not already exist. A new file may be on a different file system or drive. The code below shows how to move a file and keep the same file name.
currentfilename$ as ptr,_ 'the string containing the file to be copied
movefilename$ as ptr,_ 'the string containing the file name of the file in its new location
re as boolean 'not 0 if move was successful
let currentfilename$= "c:\text.txt"
let movefilename$="c\folder\text.txt""c:\folder\text.txt"
calldll #kernel132, "MoveFileA",_
currentfilename$ as ptr,_
movefilename$ as ptr,_
re as boolean
if re=0the print,then print "move failed"
The code below shows how to move a file with a different file name:
let currentfilename$= "c:\text.txt"
let movefilename$="c\folder\textmoved.txt""c:\folder\textmoved.txt"
calldll #kernel132, "MoveFileA",_
currentfilename$ as ptr,_
movefilename$ as ptr,_
re as boolean
if re=0thethen print, "move failed"
Below the method by which a file can be moved using the name comand is shown:
name filename$ as movefilename$
You must set the filename$ string to the current name of the file you want to move. Remember to include the full path. Then you need to set the movefilename$ to the path to which you want to move it, plus the filename.
A working example is shown below:
let currentfilename$= "c:\text.txt"
let movefilename$="c\folder\text.txt""c:\folder\text.txt"
name filename$ as movefilename$
Deleting a file
Files can be deleted using the kill command. The kill comand does not place the file in the recycle bin. The code below shows how the kill command works.filedialog "select file a file todelete"delete", "*.*", filename$
if filename$="" then wait
kill filename$
Use the code above wisely and don't just delete any odd file because it is hard to get
Renaming a file
You can use the name command to rename a file. This command can also be used to move a file. See the move section above to learn how that works. The code below shows how to rename a file:filedialog "select file a file toRemember to include file extensions such as .txt on the end of the new file name.rename"rename", "*.*", filename$
if filename$="" then wait
prompt "enter a new file name"; newfilename$
name filename$ as newfilename$
print "Filename has been changed from";filename$;"to";newfilename$
Article by Alex Barfoot
alexbarfoot at gmail.com
-