我正在尝试使用fs读取xml文件。在将路径变量作为该函数的第一个参数传递后,我无法使用fs.readFileSync读取文件。 注意:这是在Windows机器中
pull
更新文件
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>
答案 0 :(得分:1)
在JavaScript中,反斜杠字符用于表示紧随其后的字符应被特殊对待。为了在JavaScript字符串中创建文字反斜杠,您需要使用另一个反斜杠对反斜杠进行转义。
var a = "\abc";
console.log(a); // abc
var b = "\\abc";
console.log(b); // \abc
var c = "\"abc\"";
console.log(c); // "abc"
xmlFile="C:\\Users\\xyz\\AppData\\Local\\.proxySettings.xml";
console.log(xmlFile); // C:\Users\xyz\AppData\Local\.proxySettings.xml
因此,Windows路径名在JavaScript中始终需要双反斜杠