无法将数据写入 Node JS 中的文件
Not able to write data to a file in Node JS
我想在 Node Js 中已经创建的文件中写入文本。这是我所做的
Upload.html
<form enctype ="multipart/form-data" action ="/file" method ="post">
MAC Address:<br>
<input type="text" name="macadd" id="macadd"><br>
Percentage:<br>
<input type="text" name="percent" id="percent"><br>
<input type="submit" value='Submit' id="upload">
<br>
</form>
App.js
app.route('/file').post(function (req,res,next) {
var macadd =req.body.macadd;
//var percent =req.body.percent;
var path ="C:\Proj\doc\data.txt";
var data ="hello";
fs.writeFile(path,macadd , function(error) {
if (error) {
console.error("write error: " + error.message);
} else {
console.log("Successful Write to " + path);
}
});
});
我想将'macadd'的值写入文件data.txt。它主要是一个整数值,但是当我单击提交时,它在文件中显示为 'undefined',即使它在控制台上显示为成功写入。有什么解决办法吗?
您需要更改指定路径的方式:
var path ="C:\Proj\doc\data.txt";
应该是:
var path ="C:/Proj/doc/data.txt";
您可以使用像 path-resolve
这样的节点实用程序来帮助您:
路径解析:https://www.npmjs.com/package/path-resolve
$ npm install path-resolve --save
然后使用如下:
var resolve = require('path-resolve');
var path = resolve("C:\Proj\doc\data.txt").replace(/\/g,'/');
我只是在路径的文件夹之间添加了 2 个斜杠,并添加了路径解析包。像这样:
var path =resolve("C:\Proj\doc\data.txt");
为了将文本框的值放入文件中,我必须删除表单标记中的加密类型。
<form action ="/file" method ="post">
MAC Address:<br>
<input type="text" name="macadd" id="macadd"><br>
Percentage:<br>
<input type="text" name="percent" id="percent"><br>
<input type="submit" value='Submit' id="upload">
<br>
</form>
我想在 Node Js 中已经创建的文件中写入文本。这是我所做的
Upload.html
<form enctype ="multipart/form-data" action ="/file" method ="post">
MAC Address:<br>
<input type="text" name="macadd" id="macadd"><br>
Percentage:<br>
<input type="text" name="percent" id="percent"><br>
<input type="submit" value='Submit' id="upload">
<br>
</form>
App.js
app.route('/file').post(function (req,res,next) {
var macadd =req.body.macadd;
//var percent =req.body.percent;
var path ="C:\Proj\doc\data.txt";
var data ="hello";
fs.writeFile(path,macadd , function(error) {
if (error) {
console.error("write error: " + error.message);
} else {
console.log("Successful Write to " + path);
}
});
});
我想将'macadd'的值写入文件data.txt。它主要是一个整数值,但是当我单击提交时,它在文件中显示为 'undefined',即使它在控制台上显示为成功写入。有什么解决办法吗?
您需要更改指定路径的方式:
var path ="C:\Proj\doc\data.txt";
应该是:
var path ="C:/Proj/doc/data.txt";
您可以使用像 path-resolve
这样的节点实用程序来帮助您:
路径解析:https://www.npmjs.com/package/path-resolve
$ npm install path-resolve --save
然后使用如下:
var resolve = require('path-resolve');
var path = resolve("C:\Proj\doc\data.txt").replace(/\/g,'/');
我只是在路径的文件夹之间添加了 2 个斜杠,并添加了路径解析包。像这样:
var path =resolve("C:\Proj\doc\data.txt");
为了将文本框的值放入文件中,我必须删除表单标记中的加密类型。
<form action ="/file" method ="post">
MAC Address:<br>
<input type="text" name="macadd" id="macadd"><br>
Percentage:<br>
<input type="text" name="percent" id="percent"><br>
<input type="submit" value='Submit' id="upload">
<br>
</form>