• Blazor组件自做十一 : File System Access 文件系统访问 组件


    Blazor File System Access 文件系统访问 组件

    Web 应用程序与用户本地设备上的文件进行交互

    File System Access API(以前称为 Native File System API,在此之前称为 Writeable Files API)使开发人员能够构建强大的 Web 应用程序,与用户本地设备上的文件进行交互,例如 IDE、照片和视频编辑器、文本编辑器等。用户授予 Web 应用访问权限后,此 API 允许他们直接读取或保存对用户设备上文件和文件夹的更改。除了读取和写入文件之外,文件系统访问 API 还提供打开目录和枚举其内容的能力。

    浏览器支持:

    chrome 86 | firfox × | edge 86 | safari ×

    Windows、macOS、ChromeOS 和 Linux 上的大多数 Chromium 浏览器目前都支持文件系统访问 API

    示例:

    https://blazor.app1.es/FileSystem

    使用方法:

    1.nuget包

    BootstrapBlazor.FileSystem

    2._Imports.razor 文件 或者页面添加 添加组件库引用

    @using BootstrapBlazor.Components

    3.razor页面

    
    
    
    @contents
    @code{ private string contents; private Task OnFileText(string contents) { this.contents = contents; StateHasChanged(); return Task.CompletedTask; } private Task OnFileStream(Stream stream) { //using MiniExcelLibs //private string contentsExcel; //var rows = stream.Query().ToList(); //rows.ForEach(a=> contentsExcel += Environment.NewLine + string.Join(" | " , a )); StateHasChanged(); return Task.CompletedTask; } private Task OnDirectory(List dirs) { if (dirs == null || !dirs.Any()) return Task.CompletedTask; contents += "Dir:" + Environment.NewLine; contents += dirs.First() + Environment.NewLine; foreach (var item in dirs.Skip(1).OrderByDescending(a => a.StartsWith("+")).ThenBy(a => a)) { contents += item + Environment.NewLine; } StateHasChanged(); return Task.CompletedTask; } }

    演示地址 https://blazor.app1.es/filesystems

    例: 打开文件读取为内存流用 MiniExcel 打开

    使用方法

    1. 新建/打开文本文件

    2. 打开目录浏览

  • 相关阅读:
    [附源码]Python计算机毕业设计Django人事管理系统
    音频信号处理
    Pytorch索引、切片、连接
    C语言入门--指针
    ModuleNotFoundError: No module named ‘pycocotools‘解决办法
    k8s中部署nginx-ingress实现外部访问k8s集群内部服务
    机器学习 - 决策树:技术全解与案例实战
    Ribbon:负载均衡工具
    C++STL详解(二)vector的使用及其模拟实现
    ​LeetCode解法汇总2864. 最大二进制奇数
  • 原文地址:https://www.cnblogs.com/densen2014/p/16812225.html