以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助] WriteFile 错误  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=130417)

--  作者:laipiwen
--  发布时间:2019/1/21 15:49:00
--  [求助] WriteFile 错误

图片点击可在新窗口打开查看此主题相关图片如下:screenshot_2019-01-21-15-36-57-960_com.tencent.wework.png
图片点击可在新窗口打开查看


请问老师 使用以下代码  在打开文件的时候  电脑上可以正常下载。手机端就出现截图所示的乱码,也有下载但是htm格式(如果是图片格式文件就正常),请问该如何修改代码?

Dim e As RequestEventArgs = args(0)
Dim file As String = ProjectPath &"RemoteFiles\\" & e.Values("file")
e.WriteFile(file)

尝试这下面的代码  
http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=106494&skin=0

        Dim file As String = e.Values("file")
        Dim fs As System.IO.FileStream = Nothing
        fs = System.IO.File.Open("d:\\" & file, System.IO.FileMode.Open)
        Dim btFile As Byte() = New Byte(fs.Length - 1) {}
        fs.Read(btFile, 0, Convert.ToInt32(fs.Length))
        fs.Close()
        
        e.Response.Headers("Content-Disposition") = "attachment;filename=" & file
        \'输出文件格式
        e.Response.C
        
        Dim output = e.response.OutputStream
        output.Write(btFile,0,btFile.Length)
        output.Close()

也是和  shenyl0211 一样报错。用不了
[此贴子已经被作者于2019/1/21 15:58:59编辑过]

--  作者:有点蓝
--  发布时间:2019/1/21 16:46:00
--  
换不同手机浏览器测试一下
--  作者:laipiwen
--  发布时间:2019/1/21 16:51:00
--  
以下是引用有点蓝在2019/1/21 16:46:00的发言:
换不同手机浏览器测试一下
我这里测试几个常用浏览器都是这样


--  作者:laipiwen
--  发布时间:2019/1/21 17:23:00
--  
有其他思路解决这个问题吗?
--  作者:有点蓝
--  发布时间:2019/1/21 17:39:00
--  
做个可以运行的例子发过来测试一下
--  作者:laipiwen
--  发布时间:2019/1/21 19:47:00
--  
以下是引用有点蓝在2019/1/21 17:39:00的发言:
做个可以运行的例子发过来测试一下
做了一个实例,可以再现问题,请帮我看看
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:附件测试.zip


--  作者:有点蓝
--  发布时间:2019/1/21 20:59:00
--  
启动服务要加上pdf后缀

HttpServer.Prefixes.Add("http://192.168.1.100/")
HttpServer
.WebPath = "d:\\web"
HttpServer
.Extensions.Remove(".pdf")
HttpServer
.Start()

使用手机QQ浏览器会出现下载提示,改名保存即可

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

如果要直接弹出正确的名称,httprequest代码改为
Select Case e.path
    Case "1.pdf"
        Dim file As String = "f:\\1.pdf"
        e.WriteFile(file)
End Select


图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看