如何在内存中创建一个文本文件并在其上写入内容并在客户端中打开记事本并在其中打开该文件?

2023-12-04

我如何在内存中创建一个文本文件(Ram -> Save NoWhere)并在其上写入一些内容并在客户端浏览器顶部打开记事本并在其中打开该文本文件并让用户自行保存? -> 在代码后面

提前感谢

此致


你不能那样做。
您所能做的就是将文件内容写入正确的响应中MIME输入标头(例如“text/plain”),客户端浏览器将使用为提供的 MIME 类型配置的查看器打开文本数据。

<%@ Page language="vb" runat="server" explicit="true" strict="true" %>
2   <script language="vb" runat="server">
3   Sub Page_Load(Sender As Object, E As EventArgs)
4       Dim strRequest As String = Request.QueryString("file") '-- if something was passed to the file querystring
5       If strRequest <> "" Then 'get absolute path of the file
6           Dim path As String = Server.MapPath(strRequest) 'get file object as FileInfo
7           Dim file As System.IO.FileInfo = New System.IO.FileInfo(path) '-- if the file exists on the server
8           If file.Exists Then 'set appropriate headers
9               Response.Clear()
10              Response.AddHeader("Content-Disposition", "attachment; filename=" & file.Name) ' comment this line if needed
11              Response.AddHeader("Content-Length", file.Length.ToString())
12              Response.ContentType = "application/octet-stream" 'this is MIME type
13              Response.WriteFile(file.FullName)
14              Response.End 'if file does not exist
15          Else
16              Response.Write("This file does not exist.")
17          End If 'nothing in the URL as HTTP GET
18      Else
19          Response.Write("Please provide a file to download.")
20      End If
21  End Sub
22  </script>

http://www.xefteri.com/articles/show.cfm?id=8

这是稍微修改过的 c# 示例代码

<%@ Page Title="Home Page" Language="C#" AutoEventWireup="true"%>
<script language="cs" runat="server">
    public void Page_Load(object sender, EventArgs e)
    {

        byte[] buffer;
        using (var memoryStream = new System.IO.MemoryStream())
        {
            buffer = Encoding.Default.GetBytes("Hello StackOverflow"); //Dummy data
            memoryStream.Write(buffer, 0, buffer.Length);
            Response.Clear();
            Response.AddHeader("Content-Disposition", "attachment; filename=hello.txt"); //This wil force browser to silently download file. you can comment this line to see difference
            Response.AddHeader("Content-Length", memoryStream.Length.ToString());
            Response.ContentType = "text/plain"; //This is MIME type
            memoryStream.WriteTo(Response.OutputStream);
        }
        Response.End();

    }
</script>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在内存中创建一个文本文件并在其上写入内容并在客户端中打开记事本并在其中打开该文件? 的相关文章

随机推荐

  • 对 MySQL 表中的行重新排序

    我有一张桌子 ID Name Order 1 John 1 2 Mike 3 3 Daniel 4 4 Lisa 2 5 Joe 5
  • 无法使用 http/https 将 Git 推送到远程存储库

    我在服务器上的 apache 提供的目录中有一个 Git 存储库 我已经配置了 WebDAV 并且它似乎运行正常 Litmus 返回 100 成功 我可以从远程主机克隆我的存储库 但是当尝试推送 http 或 https 时 出现以下错误
  • Azure SQL 数据仓库的简单性能测试

    我们正在努力将现有应用程序移植到 Azure SQL 数据仓库 为了更好地了解 Azure SQL 数据仓库的性能 工作负载管理特征 功能 我设置了一个我认为非常简单的测试 我加载了一个静态表 即我们企业的日历 包含大约 20k 行 即对于
  • 能够使用附近连接同时向多个设备发送消息/字节

    为了尝试附近的 API 我决定构建一个应用程序 允许老师跟踪学生在课堂上的出勤情况 类似于什么张嘉伦是在做 我已经经历了谷歌关于剪刀石头布和对讲机的示例代码 但似乎只有一个设备可以连接在任何一个时间当我使用 4 部手机测试样本时 我想构建一
  • 使用 selenium 滚动抓取 javascript 表

    我正在尝试抓取通过 javascript 生成的表格 但我很挣扎 到目前为止我的代码是 driver webdriver Chrome driver get https af ktnlandscapes com get table firs
  • 如何导出具有依赖关系的 SVN 存储库的一部分?

    我正在尝试使用迁移 SVN 存储库的一部分svnadmin dump 提供的 svndumpfilter 工具不管理导出中未包含的目录的复制 移动 重命名依赖项 有没有一个工具可以管理这些依赖关系 我发现了 Simon Tatham 的一个
  • 为每个类别选择 N 条记录并按 X 排序

    我有一个包含博客文章的数据库表 我想在主页上显示每个类别的一篇 或多篇 帖子 例如按日期排序 所以我的帖子表如下所示 id title description cat filename date 我将如何创建这样的查询 我想过使用 grou
  • 如何计算正弦曲线两端的面积

    给定这个数据集 y lt c 13 16 35 40 28 36 43 33 40 33 22 5 27 31 29 25 26 31 26 24 25 29 23 4 t lt 1 24 我的目标是计算两个面积 第一个区域将仅集成来自零线
  • 使用 Grunt Uglify 进行动态映射和连接

    我正在尝试使用动态映射并使用 Grunt Uglify 连接 Javascript 文件 我有以下无法正常工作的情况 这是我的文件夹结构 javascript account custom js bills billing one js b
  • elasticsearch:如何索引仅是停用词的术语?

    我在后台使用 elasticsearch 构建了自己的小搜索 取得了很大的成功 但有一件事我在文档中找不到 我正在索引音乐家和乐队的名字 有一个名为 The The 的乐队 由于停用词列表 该乐队从未被索引 我知道我可以完全忽略停用词列表
  • 自定义注释图像仅在程序开始时旋转(Swift-iOS)

    请在这里帮助新手 iOS 开发者 所以 我有一个计时器 它定期从提供公交车实时位置的 xml 表中获取公交车的纬度和经度 我能够设置解析器 为总线运动设置动画并为总线设置自定义 箭头 图像 然而 问题是 每次获得纬度和经度的新值时 我无法旋
  • forEach 循环中的 setTimeout

    如果满足特定条件 我想延迟调用 forEach 循环中的另一个函数 但我不理解这种情况下的 setTimeout function checkName person console log checking name of person n
  • 鼠标悬停时更改映射图像热点的背景

    我有 3 个多边形的图像图 实际的图像热点是由多条曲线和边缘组成的复杂形状 img src images map gif alt HTML Map border 0
  • Python 中“dict”的内存分配是如何工作的?

    我在玩字典时发现了这个 import sys Square1 Square2 Square3 for i in range 1 8 Square1 i i 2 for i in range 1 11 Square2 i i 2 for i
  • 对象引用未设置到对象的实例[重复]

    这个问题在这里已经有答案了 我收到一个错误VB Net 未将对象引用设置为对象的实例 你能告诉我这个错误的原因是什么吗 该对象在使用前尚未初始化 在代码文件的顶部输入 Option Strict On Option Explicit On
  • 在 Objective C 中使用 for-in 循环访问特定类型的对象 [重复]

    这个问题在这里已经有答案了 我正在运行一个 for in 循环NSMutableArray 有类的实例A在数组中也有一些实际上是其子类的实例B 所以如果我只想要子类的成员B 我正在检查我得到的每个对象的类if循环体内的条件 有没有可能不写这
  • 如何在 ASP.NET Membership Cookie 中存储自定义数据

    谁能给我一个关于如何在 ASP NET 会员 cookie 中存储自定义数据的示例 或为我指明正确的方向 我需要向 cookie 添加一些自定义属性 例如 UserID 和 URLSlug 并且能够以与检索用户名相同的方式检索信息 Edit
  • 在 Python 2.7 中的 lambda 函数内使用 print 函数时出错

    我正在 Python 2 7 中运行一个简单的代码 但它给了我语法错误 hello lambda first print Hello first 报告的错误是SyntaxError invalid syntax Python 不允许在以下位
  • varchar 和 nvarchar 有什么区别?

    难道只是这样吗nvarchar支持多字节字符吗 如果是这样的话 除了存储问题之外 使用真的有什么意义吗 varchars An nvarchar列可以存储任何 Unicode 数据 Avarchar列仅限于 8 位代码页 有些人认为varc
  • 如何在内存中创建一个文本文件并在其上写入内容并在客户端中打开记事本并在其中打开该文件?

    我如何在内存中创建一个文本文件 Ram gt Save NoWhere 并在其上写入一些内容并在客户端浏览器顶部打开记事本并在其中打开该文本文件并让用户自行保存 gt 在代码后面 提前感谢 此致 你不能那样做 您所能做的就是将文件内容写入正