我想在XML文件从位置A复制到B时为其添加时间戳。
const fs = require('fs');
// destination.txt will be created or overwritten by default.
fs.copyFile('\\\\IP\\FOLDER\\FILE.xml', 'c:\\FOLDER\\FILE.xml', (err) => {
if (err) throw err;
console.log('OK! Copy FILE.xml');
});
复制有效,但我不知道如何添加时间戳。
答案 0 :(得分:2)
Date.now为您提供了一个时间戳记(即,自1970年1月1日起经过的毫秒数)。
您可以将其添加到copyFile
的第二个参数中,这是文件名的目标路径。
示例:
const fs = require('fs');
// destination.txt will be created or overwritten by default.
fs.copyFile('\\\\IP\\FOLDER\\FILE.xml', `c:\\FOLDER\\FILE_${Date.now()}.xml`, (err) => {
if (err) throw err;
console.log('OK! Copy FILE.xml');
});
请注意反斜线–这是一个JavaScript模板字符串,可让您使用${}
添加数据。
如果您需要当天的日期字符串(如注释中所指出),则可以编写一个小的帮助程序函数来创建该字符串:
const fs = require('fs');
function getDateString() {
const date = new Date();
const year = date.getFullYear();
const month = `${date.getMonth() + 1}`.padStart(2, '0');
const day =`${date.getDate()}`.padStart(2, '0');
return `${year}${month}${day}`
}
// destination.txt will be created or overwritten by default.
fs.copyFile('\\\\IP\\FOLDER\\FILE.xml', `c:\\FOLDER\\FILE_${getDateString()}.xml`, (err) => {
if (err) throw err;
console.log('OK! Copy FILE.xml');
});
这将创建如下文件名: FILE_20182809.xml