首页 > 其他分享 >Blazor下载文件

Blazor下载文件

时间:2024-03-03 10:45:20浏览次数:21  
标签:文件 fileStream JS Download File var Blazor fileName 下载

法一:

@using System.IO
@inject IJSRuntime JS

<PageTitle>File Download 1</PageTitle>

<h1>File Download Example 1</h1>

<button @onclick="DownloadFileFromStream">
Download File From Stream
</button>

@code {
private Stream GetFileStream()
{
var randomBinaryData = new byte[50 * 1024];
var fileStream = new MemoryStream(randomBinaryData);

return fileStream;
}

private async Task DownloadFileFromStream()
{
var fileStream = GetFileStream();
var fileName = "log.bin";

using var streamRef = new DotNetStreamReference(stream: fileStream);

await JS.InvokeVoidAsync("downloadFileFromStream", fileName, streamRef);
}
}

 

法二

@inject IJSRuntime JS

<PageTitle>File Download 2</PageTitle>

<h1>File Download Example 2</h1>

<button @onclick="DownloadFileFromURL">
Download File From URL
</button>

@code {
private async Task DownloadFileFromURL()
{
var fileName = "quote.txt";
var fileURL = "/files/quote.txt";
await JS.InvokeVoidAsync("triggerFileDownload", fileName, fileURL);
}
}

标签:文件,fileStream,JS,Download,File,var,Blazor,fileName,下载
From: https://www.cnblogs.com/Biyuanguang/p/18049664

相关文章

  • Blazor绑定数字
    <h1>DecimalBindingExample</h1><p><label>Decimalvalue(&plusmn;0.000format):<input@bind="DecimalValue"/></label></p><p><code>decimalValue</code>:......
  • Blazor之onclick事件更新值
    <h1>EventHandlerExample1</h1><h2>@headingValue</h2><p><button@onclick="UpdateHeading">Updateheading</button></p><p><label><inputtype="checkb......
  • Blazor常用事件
    一、Input事件:<h1>BindEventExample</h1><p><label>InputValue:<input@bind="InputValue"@bind:event="oninput"/></label></p><p><code>InputValue</cod......
  • 如何用压缩工具对指定文件进行备份保存
    使用场景:当你的程序文件需要每日自动备份时 脚本文件:新建记事本文件,重命名为bak.bat@echooff::设置7z的命令行程序路径setzip7=D:\\7-Zip\\7z.exe::设置压缩包保存路径setSave=E:\\datebak::当天日期,备份文件名setcurdate=%date:~0,4%-%date:~5,2%-%date:~8,2%::......
  • nvm下载安装以及切换node.js版本
    nvm下载安装以及切换node.js版本下载nvm下载地址:https://github.com/coreybutler/nvm-windows/releases找到nvm-setup.zip文件并下载安装解压nvm-setup.zip文件,双击nvm-setup.exe进行安装安装界面会有选择nvm和node的安装路径,按自己的需求进行安排路径检查安装win+r召......
  • c++多线程按行读取同一个每行长度不规则文件
    对于非常大的比如上百G的大文件读取,单线程读是非常非常慢的,需要考虑用多线程读,多个线程读同一个文件时不用加锁的,每个线程打开一个独立的文件句柄多线程读同一个文件实现思路思路1先打开一个文件句柄,获取整个文件大小file_size确定要采用线程读取的部分大小read_size和......
  • 第二十九天:网络文件共享服务和数据同步
    一、存储类型存储类型分为三种直连式存储:Direct-AttachedStorage,简称DAS存储区域网络:StorageAreaNetwork,简称SAN网络附加存储:Network-AttachedStorage,简称NAS 1、DAS存储DAS存储是最常见的一种存储方式,尤其是在中小企业应用中。PC中的硬盘或只有一个外部SCSI接......
  • [python]将多张图片合并为单个pdf文件
    前言最近有个个人需求是要把多个图片文件合并为一个PDF文件,这样方便用PDF阅读器连续看,避免界面点一下,只会图片放大。(比如看漫画)主要思路是先把单张图片转换成单个PDF文件,然后把PDF文件进行合并。原先是用WPS的转换工具做的,但WPS每次只能批量转换30张,如果有大量图片文件,用WPS就不......
  • 如何利用IDM下载央视网视频
    前言对于大名鼎鼎的下载器IDM,大家一定不陌生吧,所以对于它的基本介绍和使用我就不过多阐述了,但是在对央视网视频直接用IDM嗅探进行下载资源后,播放视频时往往会出现乱码的情况,经过探索,我发现了一种完美的解决方法。第一步:不要立即下载,点击稍后下载第二步:打开IDM软件主面板点击......
  • scrapy——分别存储在文本文件和mysql数据库中
    笔记如何将爬取到的数据一份存储到本地一份存储到数据库?-创建一个管道类-爬虫文件提交到的item指挥给管道文件中的第一个被执行的管道类接收-process_item方法中的returnitem表示将item提交给下一个管道类在pipelines类中加入MysqlPiplines类#Defineyour......