问题是这样:
有一个按钮button,有一个文件路径filename,当点击按钮的时候,用IE浏览器将filename路径下的文件打开,文件的类型可能是图片,可能是word文件,可能是xml文件,而且filename是动态的,请教大家该怎么写?
直接在按钮的click事件里边写呢还是写javascript脚本,不管用什么方式,请大家写的详细一些,第一个解决的,分全部相送,谢谢!

解决方案 »

  1.   

    实际上filename你还是要用URL的形式让用户打开他的,比如WORD,你本身用户得有装WORD才可以在IE打开,否则将出现下载的情况
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim str As String = "看看是输出还是下载"
            Page.Response.Clear()
            '以打开方式 
            Page.Response.AppendHeader("Content-Disposition", "inline ;Filename=my.txt")
            '用下载方式 Page.Response.AppendHeader("Content-Disposition", "attachment ;Filename=my.txt")
            Page.Response.AppendHeader("Content-Disposition", "attachment ;Filename=my.txt")
            Page.Response.ContentType = "text/plain"   ''这里根据你文件类型的不同有不同的文件标头
            Page.Response.Write(str)
            Page.Response.End()
        End Sub
      

  2.   

    在按钮的click事件里写吧。很简单。Dim objProcess As New Process                     objProcess.StartInfo.FileName = "iexplore " 
    objProcess.StartInfo.Arguments = "E:\My document\Personal\Jianli\jianli.doc" //从数据库中查出来的文件名objProcess.Start()
      

  3.   

    To hackate(兰花开香入梦境,独思佳人亦飘然!!)
    用你的方法怎么不行呢?
    假如我的机器上word什么的都有,现在就打开一个c:\aa.doc文件,用浏览器在一个新的窗口中打开,怎么写?当然c:\aa.doc这个是从数据库中取出来的,是动态的。
      

  4.   

    <input type=file>即可
    客户端的东西不能那样写
      

  5.   

    如果是客户端打开,filename指定路径根本不可取,你不知道客户端都有那些目录和文件的,如果是在服务器端的文件,直接在服务器端处理即可
      

  6.   

    应该直接写url在服务器端处理,肯定不是客户端的路径。
      

  7.   

    回复 net_lover(孟子E章) :
    如果是客户端打开,filename指定路径根本不可取,你不知道客户端都有那些目录和文件的,如果是在服务器端的文件,直接在服务器端处理即可“直接在服务器端处理即可”是什么意思?怎么处理?
    如果filename是服务器上某个文件的存放路径,我在这边用IE浏览器打开,应该怎么做呢?
      

  8.   

    问题还没有解决,所以继续提起来再问。
    我这个打印就是在客户端处理的,打印的是服务器端的文件,打印的时候可以取得服务器端文件的路径(这个路径的格式我也不太清楚),点击打印的时候只需要用IE浏览器在一个新的窗口中将文件打开即可,然后打印用IE自带的那个打印,文件类型可能是.doc,.txt,.xml等的其中一种。
    应该不是太难写,请大家帮忙,谢谢!
      

  9.   

    直接读取 FILENAME的文件,然后获取这个文件的类型,用这个类型去获取MIME类型
     然后输出时修改文档的MIME 即可
      

  10.   

    Page.Response.Clear()
            '以打开方式 
            Page.Response.AppendHeader("Content-Disposition", "inline ;Filename=my.txt")
            '用下载方式 Page.Response.AppendHeader("Content-                                
            'Disposition", "attachment ;Filename=my.txt")
            'Page.Response.AppendHeader("Content-Disposition", "attachment ;Filename=my.txt")
            Page.Response.ContentType = "text/plain"   ''这里根据你文件类型的不同有不同的文件标头
            Page.Response.Write(str)
            Page.Response.Redirect("F:\Open\11.txt")
            Page.Response.End()
      

  11.   

    Page.Response.Clear()
        '以打开方式 
         Page.Response.AppendHeader("Content-Disposition", "inline ;Filename=my.txt")
         Page.Response.ContentType = "text/plain"   ''这里根据你文件类型的不同有不同的文件标头
         Page.Response.Redirect("F:\Open\11.txt")
         Page.Response.End() 这样就可以!!!!!!!!
      

  12.   

    Page.Response.Redirect("../CreateAndDelete\Webshots_12004.jpg")  我试过了,只要这一句话就可以了,你自己也run一下!应该没有问题!!!!