使用C#开发红外通讯
这种技术可以用于在Windows平台和非Windows平台之间进行的通信。.NET Compact Framework提供了Sockets程序库的扩展,专门用于通过红外线端口发送和读取数据。这些类可以用在移动设备之间交换数据。下面的代码是一个IrDA客户端应用程序的一个部分,这个程序连接到一个叫 PDA_2的 IrDA服务,将“Hello,World”消息发送到一个侦听该服务的IrDA服务器。服务器发出一个回答,由客户端接收。
using System.IO;
using System.Net;
using System.Net.Sockets;
.
.
.
IrDAClient client = new IrDAClient();
client.Connect("PDA_2");
StreamWriter output = new StreamWriter(client.GetStream());
output.WriteLine("Hello,World!");
output.Flush();
StreamReader input = new StreamReader(client.GetStream());
string reply = input.ReadLine();
client.Close();
下面的代码为对应服务器端的代码。这个程序侦听客户的请求,读取客户发来的消息,然后发出一个响应。
IrDAListener listener = new IrDAListener("PDA_2");
listener.Start();
client = listener.AcceptIrDAClient();
StreamReader input = new StreamReader(client.GetStream());
string message = input.ReadLine();
.
.
.
StreamWriter output = new StreamWriter(client.GetStream());
output.WriteLine("Message received!!");
outout.Flush();
client.Close();