没做过生成到客户机器上的,用数字签名可能可以实现吧
可以将流传到jsp页面,让页面生成文件让客户端下载

解决方案 »

  1.   

    你可以试试applet吧。server将文件传到applet,然后由applet保存。由于applet是在本地运行的。所以只要设好它的权限的话,是可以在本地保存文件。:)如果用jsp的话,可能性不是很大。
      

  2.   

    用applet?
    如果客户的浏览器材不支持怎么办?
    还有好的方法没?
      

  3.   

    <center>
    <br>
    <table border="0" cellpadding="0" cellspacing="0" width="80%">    
      <tr>
        <td width="100%" valign="top">测试XMLHTTP</td>
      </tr>
    </table>
    <br>
    <table border="0" cellpadding="0" cellspacing="0" width="80%">    
      <tr>
        <td width="100%" valign="top">
    <input type="text" value="http://10.70.38.10:9002/System/Dot/Show.jsp?Id=1" id="URLID">
    <input type="text" value="C:\\DownURL.doc" id="LocalURLID">
    <input type="button" value="下载" onclick="DownURL(URLID.value,LocalURLID.value);">
        </td>
      </tr>
    </table>
    <br>
    <div id=App style="border:1 solid #000000;background-color:#FFFFFF;height:200px;overflow:auto;width:80%;z-index:2" contentEditable></div>
    <script>
    function OpenFile(strFileName)
    {
    try
    {
    var WordApp=new ActiveXObject("Word.Application");
    WordApp.Application.Visible=false;
    var Doc=WordApp.Documents.Open(strFileName);
    Doc.Activate();
    Doc.Parent.Options.InsertedTextColor=4;
    Doc.Parent.Options.InsertedTextMark=2;
    Doc.Parent.Options.DeletedTextColor=4;
    Doc.Parent.Options.DeletedTextMark=1;
    Doc.TrackRevisions=true;
    Doc.PrintRevisions=true;
    Doc.ShowRevisions=true;
    Doc.Application.UserName="";
    var Range=Doc.Range();
    Range.Select();
    var Selection=WordApp.Selection;
    Selection.Copy();
    App.focus();
    document.execCommand("Paste");
    App.focus();
    WordApp.DisplayAlerts=false;
    Doc.Close();
    WordApp.DisplayAlerts=true;
    WordApp.Quit();
    }
    catch(e)
    {
    window.confirm(e);
    }
    }
    function DownURL(strRemoteURL,strLocalURL)
    {
    try
    {
    var xmlHTTP=new ActiveXObject("Microsoft.XMLHTTP");
    xmlHTTP.open("Get",strRemoteURL,false);
    xmlHTTP.send();
    var adodbStream=new ActiveXObject("ADODB.Stream");
    adodbStream.Type=1;//1=adTypeBinary
    adodbStream.Open();
    adodbStream.write(xmlHTTP.responseBody);
    adodbStream.SaveToFile(strLocalURL,2);
    adodbStream.Close();
    adodbStream=null;
    xmlHTTP=null;
    OpenFile(strLocalURL);
    }
    catch(e)
    {
    window.confirm("下载URL出错!");
    }
    //window.confirm("下载完成.");
    }
    </script>
    <br>
    <table border="0" cellpadding="0" cellspacing="0" width="80%">    
      <tr>
        <td width="100%" valign="top">测试XMLHTTP</td>
      </tr>
    </table>
    </br>
    </center>