【发布时间】:2012-12-28 18:49:31
【问题描述】:
我创建了一个变量来保存相对路径,因为我无法拥有直接路径,因为它将安装在不同的 PC 上。
var mainUrlCONST = "../../annotations/annotate.xml";
当程序的初始页面加载时,它会检查文件是否存在。 如果没有,它会创建它。
现在问题就在这里,它从我想要的位置读取,但如果不是 查看那里的文件,它会在 PC 上的其他位置而不是我指定的位置创建它。
这会检查文件:
function initializeAnnotationFile()
{
try
{
var connection = new ActiveXObject("Microsoft.XMLHTTP");
connection.open("GET", mainUrlCONST, false);
connection.send();
if ( connection.readyState == 4 )
{
response = connection.responseText;
}
xml = response;
mainExists = true;
}
catch(e)
{
mainExists = false;
}
}
如果文件不存在,则创建该文件:
function createAnnotationFile()
{
var fso = new ActiveXObject("Scripting.FileSystemObject");
var s = fso.CreateTextFile(mainUrlCONST, true);
s.WriteLine( "<list>" );
s.WriteLine( " <section title='Annotations'>" );
s.WriteLine( " </section>" );
s.WriteLine( "</list>" );
}
这是有效的直接路径,如果有帮助的话。
var mainUrlCONST = "G:/folder/annotations/annotate.xml";
【问题讨论】:
-
您的问题缺少基本信息: 1. 这是在什么环境下运行的? 2. 查找文件的代码是什么样的? 3. 写入文件的代码是什么样的? 4. 文件在哪里结束? 5. 你期望它会在哪里结束? 6. 为什么会这样?
-
您没有向我们展示任何代码。当您不向我们展示您在做什么时,您希望我们如何帮助您?
-
你写文件的代码是什么样的?怎么读文件?这不仅仅是关于路径,而是你如何使用路径。此外,在路径名中使用
..来设计可在机器之间移植的脚本似乎是个坏主意。 -
@AlexWayne 他并没有说它是可移植的,只是说它可以安装在多台机器上。
-
@techfoobar 这似乎是非常面向 IE 的代码,
localStorage在 IE 的本地应用中不可用。
标签: javascript relative-path createfile