Javascript 文本文件中的增量ID-节点js

Javascript 文本文件中的增量ID-节点js,javascript,node.js,Javascript,Node.js,我想打开一个文件,读取文件中的ID(整数),增加ID,然后在文件中写入新获得的ID。 我在挣扎,因为我有我不太理解的输出。我尝试了几件事,但我不明白1-问题是什么2-我应该做什么来解决问题。 谢谢你的帮助! 代码如下: const fs = require('fs'); const { isNumber } = require("util"); var index_feb; fs.readFile('Shared/feb_index.txt', function (err

我想打开一个文件,读取文件中的ID(整数),增加ID,然后在文件中写入新获得的ID。 我在挣扎,因为我有我不太理解的输出。我尝试了几件事,但我不明白1-问题是什么2-我应该做什么来解决问题。 谢谢你的帮助!

代码如下:

const fs = require('fs');
const { isNumber } = require("util");

var index_feb;
fs.readFile('Shared/feb_index.txt', function (err, data) {
  //parseInt(data).toString()
  //index_feb = data;
  console.log(data);
  data.toString("utf-8");
  console.log(data);
  const i = parseInt(data.toString("hex"), 16)
  isNumber(i);
  var l = i;
  console.log(l); 
  l ++;
  index_feb = String(l);
  console.log(index_feb);
  console.log(l); 
});


fs.writeFile(path = 'Shared/feb_index.txt', data=String(index_feb), function (err, data) {} );

谢谢@Asterone和@Chris G,通过混合元素,我获得了想要的结果。 以下是最终代码:

const fs = require('fs');

var index_feb;
fs.readFile('Shared/feb_index.txt', function (err, data) {
  //parseInt(data).toString()
  //index_feb = data;
  data = data.toString("utf-8");
  console.log(data);
  const i = parseInt(data);
  var l = i;
  console.log(l); 
  l ++;
  index_feb = String(l);
  //console.log(index_feb);
  console.log(l); 
  fs.writeFile(path = 'Shared/feb_index.txt', index_feb, function (err, data) {} );
});

fs.readFile
是异步的,要在读取后进行写入,需要将writeFile命令移动到回调函数中,在回调函数中增加值。还要注意的是,函数调用本身通常不起任何作用<例如,code>.toString()返回新值,但您将放弃该值。类似地,对于
isNumber
,您需要
if(isNumber(i))…
您应该更改
data.toString(“utf-8”)
data=data.toString(“utf-8”)
或将
缓冲区
转换为字符串,但不将其分配给
数据
。整数是以10为基数的吗?@astroide整数不是以10为基数的,我把它去掉了。谢谢你的评论