当前位置: 首页 > news >正文

C#发送文件到蓝牙设备

测试环境:

visual studio 2022

win11笔记本电脑,具有蓝牙功能

.net6控制台

测试步骤如下:

1 新增名为BluetoothDemo控制台项目

2 通过nuget安装InTheHand.Net.Bluetooth,版本选择4.2.1和安装InTheHand.Net.Obex,版本选择4.1.0,如下图:

3  在程序的bin/Debug目录下新增一个名为test.txt的文本文件,内容随便填点东西

4 在主程序中编辑代码如下:

using InTheHand.Net.Obex;
using InTheHand.Net.Bluetooth;
using InTheHand.Net.Sockets;
using System.Text;
using InTheHand.Net;using (var client = new BluetoothClient())
{// 搜索附近的蓝牙设备var devices = client.DiscoverDevices();foreach (var device in devices){Console.WriteLine($"Name: {device.DeviceName}, Address: {device.DeviceAddress}");}
}//从前面的扫描蓝牙设备中获取到的设备地址
string deviceAddress = "3839CDC9171A";
BluetoothAddress address = BluetoothAddress.Parse(deviceAddress);
Guid serviceClass = BluetoothService.ObexObjectPush;
//在程序的bin/Debug目录下新增一个test.txt文件
string filePath = "test.txt"; Uri uri = new Uri($"obex://{deviceAddress}/{System.IO.Path.GetFileName(filePath)}");ObexWebRequest request = new ObexWebRequest(uri);
request.ReadFile(filePath);using (ObexWebResponse response = (ObexWebResponse)request.GetResponse())
{if (response.StatusCode == (ObexStatusCode.OK|ObexStatusCode.Final)){Console.WriteLine("文件发送成功");}else{Console.WriteLine("文件发送失败: " + response.StatusCode);}
}Console.WriteLine("Hello, World!");

上述代码中的地址deviceAddress根据实际情况填写

程序运行结果如下:

上面的iOOO Z9x是我的手机设备上的蓝牙名称,可以看到已经发送文件到我的手机了

http://www.xdnf.cn/news/465301.html

相关文章:

  • 使用 `perf` 和火焰图(Flame Graph)进行性能分析
  • 25.5.15
  • MySQL读写分离
  • 深入解析C++模板:从基础到高级应用
  • LeetCode 热题 100 437. 路径总和 III
  • 运维职业发展思维导图
  • 建筑兔零基础人工智能自学记录92|类脑智能与脑机接口-7
  • vue3搭建脚手架前的前置知识
  • 【Unity】给出两个旋转角度,判断是应该左转还是右转
  • QT设置MySQL驱动
  • 已解决(亲测有效!):安装部署Docker Deskpot之后启动出现Docker Engine Stopped!
  • 11 web 自动化之 DDT 数据驱动详解
  • 文件目录与检索综合练习题
  • 面试 Linux 运维相关问题
  • 基于SpringBoot的家政服务系统设计与实现(源码+文档+部署讲解)
  • 20、鸿蒙学习——OAID、AAID、ODID
  • openEuler24.03 LTS下安装MySQL8.0.42
  • 气动排渣煤粉炉专用V型球阀——法兰连接耐磨阀门生产厂家解析-耀圣
  • 详解 Zephyr RTOS:架构、功能与开发指南
  • Function Calling
  • 106. 从中序与后序遍历序列构造二叉树
  • 【206】VS2022 C++ 实现无符号32位整数和IP地址字符串互相转换
  • element-ui的el-cascader增加全选按钮实现(附源码)
  • DB-GPT扩展自定义app配置说明
  • 【网络编程】九、详解 HTTPS 加密原理
  • 鸿蒙 ArkUI - ArkTS 组件 官方 UI组件 合集
  • AEO认证的好处 ,如何快速获取AEO认证?
  • Java应用OOM排查:面试通关“三部曲”心法
  • android display 笔记(十四)VAU 和GSP 分别代表什么
  • fpga系列 HDL : Microchip FPGA开发软件 Libero Soc 安装 license申请