# MDS DotNET Stream **Repository Path**: MicroDistanceStudio/mds-dotnet-stream ## Basic Information - **Project Name**: MDS DotNET Stream - **Description**: 为labview写的库 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-05-22 - **Last Updated**: 2025-06-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 💾 LabVIEW .NET Stream 封装库 本项目是一个基于 LabVIEW 的 .NET 类封装组件,封装了 .NET Framework 中的 `System.IO.Stream` 类及其常用子类(如 `MemoryStream`、`FileStream`),用于在 LabVIEW 中进行高效的字节流读写、内存流操作、文件流控制等。 🛠 **适用环境:LabVIEW 2015 或更高版本(32/64 位均可)** 📦 **依赖平台:Windows + .NET Framework 4.0 或以上** --- ## ✨ 功能亮点 - ✅ 封装了 `.NET System.IO.Stream` 的核心操作 - 支持读取与写入二进制数据 - 支持设置与获取流位置(`Position`)、长度(`Length`) - 支持流的关闭与释放 - ✅ 子类支持(部分已实现): - `MemoryStream`(内存流) - `FileStream`(文件读写流) - ✅ 提供 LabVIEW 原生调用接口(VI 形式),可无缝集成 - ✅ 所有节点带中文注释,简单易用 --- ## 🚀 快速开始 1. 克隆或下载本仓库; 2. 打开 `Examples/Stream Demo.vi`; 3. 根据需要选择 MemoryStream 或 FileStream 流; 4. 执行读写操作,并观察 LabVIEW 控制台或输出内容。 --- ## 🧪 示例功能演示 > ✅ 示例:创建一个 MemoryStream,将字符串写入,再读出还原 > ✅ 示例:用 FileStream 打开本地文件,读取前 100 个字节 > ✅ 示例:获取流长度、当前位置,手动设置 Position --- ## 📌 技术说明 | 类名 | 描述 | |-----------------|----------------------------| | `Stream.lvclass` | 所有 .NET Stream 类的封装基类(抽象) | | `MemoryStream.lvclass` | 使用 .NET `MemoryStream` 实现的字节流缓存器 | | `FileStream.lvclass` | 用于从文件读取和写入数据的流封装 | --- ## 🔧 可扩展方向 - NetworkStream、BufferedStream 等其他子类封装 - 与 `System.Drawing.Image` 结合实现图像流处理 - Stream 与 JSON/XML 的序列化解耦支持 - 异步读写支持(结合 .NET Task) --- ## 📝 许可证 本项目遵循 **Apache-2.0 开源协议**,可自由用于商业或非商业项目中。欢迎 Fork、Star 和贡献! --- ## 👤 作者信息 - **微距离 | MicroDistance Studio** - 🔗 仓库主页:https://gitee.com/MicroDistanceStudio - 📮 联系方式:欢迎提交 Issue 或 PR 交流技术实现 ---