Version (8.26 KB) by Jan
Fast renaming of files or folders


Updated 7 Jan 2023

View License

Rename file or folder
This function renames the existing file or folder specified by the CHAR vector Source to the name given by the CHAR vector 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):
R2018b: 15 times faster
R2009a: 10 to 50 times faster
R6.5: 1600 times faster
This C-Mex is about 25% faster than using
[Status, Msg] = FileRename(Source, Dest, [Mode])
Source: CHAR vector, name of the source file or folder.
Unicode and UNC paths are considered.
Dest: CHAR vector, name of the destination file or folder.
Mode: CHAR vector, 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: CHAR, 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, 2009a, 2015b(32/64), 2016b, 2018b, Win7/10
Compiler: LCC2.4 (Matlab2009a), OWC1.8, BCC5.5, MSVC2008/2017
Assumed Compatibility: higher Matlab versions, Mac, Linux, 32/64bit

Cite As

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

MATLAB Release Compatibility
Created with R2018b
Compatible with R13SP1 and later releases
Platform Compatibility
Windows macOS Linux
Find more on Low-Level File I/O in Help Center and MATLAB Answers

Community Treasure Hunt

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

Start Hunting!
Version Published Release Notes

Only the description has changed.