我正在尝试使用服务器端 javascript (ASP) 输出 PDF。我当前使用的方法是:
xfile=Server.MapPath(lib.fso.GetTempName())
xf=lib.fopen(xfile,"wb");
lib.fwrite(xf,this.buffer);
lib.fclose(xf);
outB = Server.CreateObject("ADODB.Stream")
outB.Type = 1
outB.Open()
outB.LoadFromFile (xfile)
Response.BinaryWrite(outB.Read())
outB.Close()
lib.fso.DeleteFile(xfile);
这可行,但需要服务器上的写访问权限。有没有办法在不写入文件的情况下做同样的事情?
我一直无法弄清楚如何转换字符串this.buffer
into a array of byte
然后我可以使用Response.BinaryWrite
无需先写入文件。
为什么不简单地使用:-
Response.Write(this.buffer)
假设响应的代码页设置正确(即,与运行 VBScript 的区域设置相同),那么 Response.Write 应该执行与 StringToMultiByte 相同的转换。
我怀疑你已经尝试过这个但没有成功。如果是这样,我真的认为你需要研究一下为什么要尝试这种奇怪的 BinaryWrite 用法。目前,您的解决方案将杀死您的服务器。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)