This article mainly introduces node. fs. description of the open method. This article introduces fs. open Method description, syntax, receive parameters, use instances, and implement Source Code. For more information, see
Method description:
Open the file asynchronously.
In the POSIX system, path is considered to exist by default (even if the file in this path does not exist)
The flag ID may or may not run in the Network File System.
Syntax:
The Code is as follows:
Fs. open (path, flags, [mode], [callback (err, fd)])
Because this method belongs to the fs module, we need to introduce the fs module (var fs = require ("fs") before use "))
Receiving parameters:
Path file path
Flags can be the following values:
The Code is as follows:
'R'-open the file in Read mode.
'R + '-open the file in read/write mode.
'Rs '-open and read files in synchronous mode. Indicates that the operating system ignores the local file system cache.
'Rs + '-open in synchronous mode, read and write files.
Note: this is not a blocking operation that turns fs. open into synchronization mode. If you want the synchronization mode, use fs. openSync ().
'W'-open the file in Read mode. If the file does not exist, create
'Wx '-the same as 'W' mode. If the file exists, an error is returned.
'W + '-open the file in read/write mode. If the file does not exist, create
'Wx + '-the same as the 'W +' mode. If the file exists, an error is returned.
'A'-open the file in append mode. If the file does not exist, create
'Ax '-the same as 'A' mode. If the file exists, an error is returned.
'A + '-open the file in read append mode. If the file does not exist, create
'Ax + '-the same as the 'A +' mode. If the file exists, an error is returned.
Mode is used to grant permissions to files when creating files. The default value is 0666.
The callback function will pass a file descriptor fd and an abnormal err.
Example:
The Code is as follows:
Var fs = require ('fs ');
Fs. open ('/path/demo1.txt', 'A', function (err, fd ){
If (err ){
Throw err;
}
Fs. futimes (fd, 1388648322,138 8648322, function (err ){
If (err ){
Throw err;
}
Console. log ('futimes complete ');
Fs. close (fd, function (){
Console. log ('done ');
});
});
});
Source code:
The Code is as follows:
Fs. open = function (path, flags, mode, callback ){
Callback = makeCallback (arguments [arguments. length-1]);
Mode = modeNum (mode, 438/* = 0666 */);
If (! NullCheck (path, callback) return;
Binding. open (pathModule. _ makeLong (path ),
StringToFlags (flags ),
Mode,
Callback );
};