Skip to main content

A CLOSER LOOK INTO RENAMING FILES IN NODE.JS

When programming, using modules and libraries within our code is a must. As the libraries are written by others, beginners will be confused on what each function and the arguments mean. Throughout this post, we will go through renaming files with Node.js.

First, we must grasp the concept of opening a file, so the program knows what file to search for. The following is a simple set of code that will open a file.

Open()

const fs = require('fs');
fs.open('/open/some/file.txt', 'r', (err, fd) => {
     if (err) { 
          throw err;
     }
     fs.close(fd, (err) => {
          if (err) {
               throw err;
          }
     });
});
Let's go through what each part of the code represents. 
  • fs is a module that allows access to a physical file system. 
The fs.open function is called when you want to open a file. The first argument should be the path to the file. The second argument refers to whether you want to only allow read access, or write access. In this example, we will use the read option. 
  • fd represents the file descriptor, which is used for accessing newly opened files.
The error is thrown if the file is not found/has errors, and you close the file when you are finished using it.

Rename()

Now that you understand how to open a simple file, let's get into how to rename a file. In Node.js, there is a built in module that allows you to do this easily:
fs.rename(oldPath, newPath, callback){
Here is an example of how the code can be used.
fs.rename('oldFile.txt', 'newFile.txt', (err) => {
     if (err) {
          throw err;
     }
     console.log('Rename complete!');
});
Let's go through what each part of the function represents. 
  • oldPath represents the current name of the file/directory
  • newPath represents the name of the file you want to rename it to
  • callback can be used to throw an error, if there is one
You can see that this module uses fs in front of the rename() function. This goes back to the first part, opening a file. Remember that fs is the prefix before using any function that uses the physical file system, as it is already declared.

Comments

Popular posts from this blog

Lab 8

This lab is the final lab regarding this course, so I chose two issues to work on for the span of the last two Releases (0.3, 0.4). The first issue I found was an RPG game that needed to implement global stats that track the players total player deaths, monster kills by type and top stats. The language used is JavaScript Issue 1 (0.3):  https://github.com/ASteinheiser/react-rpg.com/issues/14 The second issue I found was for a rock-paper-scissors game, that needs to implement a Refresh button that resets all the win/loss/ties back to 0. Issue 2 (0.4):  https://github.com/golemheavy/RPS-Multiplayer/issues/14

Release 0.2 - Lab 4

Issue: https://github.com/RabanserD/rabanserd.github.io/issues/75 This week I managed to find an issue that required a pull request template. The required technology for this issue was github and '.md' for the documentation.

Release 0.2 - Lab 5

Issue: https://github.com/novisadjs/novisadjs.github.io/issues/1 This week I managed to find an issue that required an icon that needs to be implemented into the webpage, with a hyperlink. The person that created the issue provided an icon already, so all I had to do is implement it into the .html file. I managed to fix this issue, and got the pull request merged into the code.