从顶部开始:使用以下代码,我可以通过 ActiveX 对象在 Internet Explorer 的 htm 文件中使用 jscript 创建一个文本文件。耶!但是,在记事本中打开文本文件时,我注意到新行显示为 mojibake 字符(矩形字符)而不是 newlines 。在 Sublime 2 中很好。
<html>
<head>
</head>
<script type="text/javascript">
var myStr = "The self same moment I could pray;\nAnd from my neck so free\nThe Albatross fell off, and sank\nLike lead into the sea.";
var myPath = "C:\\temp\\";
var myTextfile = "Rime.txt"
writeFile(myPath, myTextfile, myStr)
function writeFile(apath, afilename, str)
{
var fso = new ActiveXObject("Scripting.FileSystemObject");
var outFile = fso.CreateTextFile(apath + afilename, true);
outFile.WriteLine(str);
outFile.Close();
}
</script>
</body>
</html>
我还注意到在 Photoshop 环境中使用以下内容时不会发生这种情况(我通常从中编写脚本)
var txtFile = new File(apath + "/" + afilename);
outFile.open('w');
outFile.writeln(str);
outFile.close();
这只是 ActiveX 的一个怪癖(或奖励)吗?我可以更改它,使其写入可以在记事本中正确查看的新行吗?
而且,是的,我妈妈确实警告过我涉及 ActiveX 对象的危险。