Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
File Javascript,写入txt文件,另存为UNICODE_File_Unicode_Activex_Wsh - Fatal编程技术网

File Javascript,写入txt文件,另存为UNICODE

File Javascript,写入txt文件,另存为UNICODE,file,unicode,activex,wsh,File,Unicode,Activex,Wsh,我有两条线。希望首先生成一个.txt文件,然后将字符串保存为unicode function WriteFile(file, str, str2) { var tmp=real_url.replace(/%20/g, " "); var WshNetwork=new ActiveXObject("WScript.Network"); var userid=WshNetwork.UserName; var fso = new ActiveXObject("Scr

我有两条线。希望首先生成一个.txt文件,然后将字符串保存为unicode

function WriteFile(file, str, str2)
{
    var tmp=real_url.replace(/%20/g, " ");

    var WshNetwork=new ActiveXObject("WScript.Network");
    var userid=WshNetwork.UserName;

    var fso = new ActiveXObject("Scripting.FileSystemObject");

    if(! fso.FolderExists(tmp+"users/"+userid))
    {
        var cf = fso.CreateFolder(tmp+"users/"+userid);
    }
    else
    {
        //alert("THIS FOLDER ALREADY EXISTS");
    }

    delete fso;

    var fso = new ActiveXObject("Scripting.FileSystemObject");

    var fh = fso.OpenTextFile(tmp+"users/"+userid+"/"+file, 2, true);
    fh.WriteLine(str);
    fh.WriteLine(str2);

    fh.Close();
    delete fso;

    return;
}
I

和方法都有一个指定编码的参数(ASCII或Unicode(UTF16LE))


您不能从外部站点读取/写入客户端JavaScript中的文件。这违反了安全策略。它不是基于浏览器的Javascript,而是Windows脚本主机代码,可以使用API访问本地文件系统。顺便说一句,这并不是真正的重复,但这个问题的答案可能会解决您的问题:找到解决方案!它在writeLine的属性中。您必须声明-1。Karl,您应该重新发布您的解决方案,并将其标记为已回答。如果正确,WriteLine方法接受三态值形式的可选第三个参数,该值指示文件应以Unicode、Ansi还是系统默认方式打开。此外,无需在代码中重新创建FileSystemObject。可以重用变量。否则,只会给脚本增加不必要的开销。
var fso = new ActiveXObject("Scripting.FileSystemObject");
var filename = "c:\\testfile.txt";
var f = fso.OpenTextFile(filename, 2, true, -1); // -1 means unicode
f.WriteLine("Hello world!");
f.Close();