version (8.29 KB) by Jan
Fast renaming of files or folders


Updated 28 Nov 2010

View License

Rename file or folder

This function renames the existing file or folder specified by the string Source to the name given by the string Dest. This C-Mex is much faster than Matlab's MOVEFILE (timings vary with the size and number of the files due to caching of write operations, see screenshot):
Matlab 2009a: 10 to 50 times faster,
Matlab 6.5: 1600 times faster (!).
This C-Mex is about 50% faster than using

[Status, Msg] = FileRename(Source, Dest, [Mode])
Source: String, name of the source file or folder.
Unicode and UNC paths are considered.
Dest: String, name of the destination file or folder.
Mode: String, if 'forced' an existing Dest file is overwritten,
if it is not write protected. Folders are *not* overwritten.
Optional, default: 'DoNotOverwrite'.

Status: Scalar DOUBLE. Optional.
0: Success
-1: Source is not existing
-2: Dest is existing already
-3: Dest is write protected
-4: Unknown problems:
Source or Dest is accessed from another program,
Source is a folder and Dest is on another drive.
Msg: String, empty on success, some information in case of problems.

COMPILE: The fast C-Mex file must be compiled before using.
See FileRename.c for details.

Tested: Matlab 6.5, 7.7, 7.8, WinXP, 32bit
Compiler: LCC2.4 (Matlab2009a), OWC1.8, BCC5.5, MSVC2008
Assumed Compatibility: higher Matlab versions, Mac, Linux, 64bit

Cite As

Jan (2022). FileRename (, MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2009a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!