【发布时间】:2025-12-14 11:10:01
【问题描述】:
我正在尝试使用 fs 读取 xml 文件。在将路径变量作为第一个参数传递给此函数后,我无法使用 fs.readFileSync 读取文件。 注意:这是在windows机器上
xmlFile="C:\Users\xyz\AppData\Local\.proxySettings.xml";
function myFunc(xmlFile) {
let xmlData = fs.readFile(xmlFile);
alert(xmlData);//doesn't print anything
parser = new DOMParser();
xmlDoc = parser.parseFromString(xmlData,"text/xml");
....
....
}
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<proxy_port>2582</proxy_port>
在文件中更新
try{
ffile="jdkdkj";
fs.readFileSync(ffile);
}catch(err){
app.console.log(err);
}
Error { errno: -4058, syscall: 'open', code: 'ENOENT', path: 'jdkdkj' }
【问题讨论】:
-
请发布相关的代码部分,以便我们为您提供帮助
-
嗨,马克,我已经编辑了问题
-
您的代码显示
let xmlData = fs.readFile(xmlFile);永远不会工作,因为fs.readFile()是异步的,并且需要回调作为第二个参数来传达结果。此外,路径中的反斜杠必须进行双重转义。 -
我试过 readFileSync
-
让 io="C:\\cygwin64\\xyz\\tmp.txt"; var data=fs.readFileSync(io);警报(数据); //什么都不显示
标签: node.js filesystems fs