table of contents
        
      
      
    - Tumbleweed 2024.07.05-1.3
 - Leap-16.0
 - Leap-15.6
 
| std::rename(3) | C++ Standard Libary | std::rename(3) | 
NAME¶
std::rename - std::rename
Synopsis¶
 Defined in header <cstdio>
  
   int rename( const char* old_filename, const char* new_filename );
  
   Changes the filename of a file. The file is identified by character string
    pointed
  
   to by old_filename. The new filename is identified by character string
    pointed to by
  
   new_filename.
  
   If new_filename exists, the behavior is implementation-defined.
Parameters¶
 old_filename - pointer to a null-terminated string containing the
    path identifying
  
   the file to rename
  
   new_filename - pointer to a null-terminated string containing the new path of
    the
  
   file
Return value¶
0 upon success or non-zero value on error.
Notes¶
 POSIX specifies many additional details on the semantics of this
    function, which are
  
   reproduced in C++ by std::filesystem::rename.
Example¶
// Run this code
  
   #include <cstdio>
  
   #include <cstdlib>
  
   #include <fstream>
  
   #include <iostream>
  
   int main()
  
   {
  
   if (!std::ofstream("from.txt").put('a')) // create and write to
    file
  
   {
  
   std::perror("Error creating from.txt");
  
   return EXIT_FAILURE;
  
   }
  
   if (std::rename("from.txt", "to.txt"))
  
   {
  
   std::perror("Error renaming");
  
   return EXIT_FAILURE;
  
   }
  
   std::cout << std::ifstream("to.txt").rdbuf() << '\n';
    // print file
  
   return EXIT_SUCCESS;
  
   }
Output:¶
a
See also¶
 rename moves or renames a file or directory
  
   (C++17) (function)
  
   remove erases a file
  
   (function)
  
   C documentation for
  
   rename
| 2024.06.10 | http://cppreference.com |