c#中编码与数据类型的转换
Encoding:字节编码类
Convert:基本数据类型转换成类
BitConverter:字节数组转换

(一)读写标签的使用。
 1.ReadTag函数
    语法:ReadTag(IntPtr hCom,byte memBank,byte address,byte length,byte[] data,byte readerAddr)
    功能说明:读取标签内容,通常在主从模式使用。可以读取EPC的四个区。
    返回值:成功时返回true,失败时返回false。
    参数:
    hCom:串口句柄。
    memBank:要读取的区域(保留区0x00;EPC区0x01;TID0x02,用户区0x03)
    address:要读区域中的地址,范围0-7。
    length:要读取的长度,1-8
    data:接收数据的变量地址。
    readerAddr:读取地址,一台主机接多台读头时使用,接单台读头时置为0。
 2.IdentitySingleTag函数
    语法:IdentitySingleTag(IntPtr hCom,byte[] tagld,byte[] antennaNo,byte readerAddr)
    功能说明:识别单个标签,通常在主从模式下使用。只能读取EPC区的标签ID号。
    返回值:成功时返回true,失败时返回false。
    参数:
    hCom:串口句柄。
    tagld:接收标签ID的数组地址(输出参数),长度12。
    antennaNo:接收天线号的变量地址(输出参数)。不需要时置为NULL。
    readerAddr:读头地址,一台主机接多台读头时使用,接单台读头时置为0。

//接收标签ID的数组地址(输出参数),长度为12
                byte[] tagID = new byte[12];
                //接收天线号的变量地址(输出参数)。不需要时置为NULL。
                byte[] antennaNo = new byte[1];
                if (EPCSDKHelper.IdentifySingleTag(_handle, tagID, antennaNo, 0))
                {
                    //拼接字符串
                    this.lstSingleTagInfo.Items.Add(string.Format("当前模式:主从模式;接收标签ID:{0};接收天线号:{1};", ConvertHelper.ByteArrayToHexString(tagID), ConvertHelper.ByteArrayToHexString(antennaNo)));
                    //设置显示最后一行
                    this.lstSingleTagInfo.SetSelected(this.lstSingleTagInfo.Items.Count - 1, true);
                }

    写:
  3.WriteTagSingLeWord函数:
    语法:WriteTagSingLeWord(intPtr hCom,byte memBank,byte address,byte  data1,byte data2,byte readerAddr)
    功能说明:向标签写入1个字的内容。
    参数:
    hCom:串口句柄。
    memBank:要写的区域。
    address:要写区域中的地址,范围0-7(memBank为EPC区时,0、1不可取)
    data1:要写入内容的第1个字节。
    data2:要写入内容的第2个字节。
    readerAddr:读头地址,一台主机接多台读头时使用,接单台读头时置为0。

 4.FastWriteTagID函数:
    语法:FastWriteTagID(intPtr hCom,int bytesNum,byte[] bytes,byte  readerAddr)
    功能说明:快写EPC区ID号(标签号码)。
    参数:
    hCom:串口句柄。
    bytesNum:要写入内容的字节数,必须为2、4、6、8、10或12。
    bytes:要写入的内容。
    readerAddr:读头地址,一台主机接多台读头时使用,接单台读头时置为0。

//获取数据
                byte[] bytData = Encoding.Default.GetBytes(txtFastWriteTagIDContent.Text);
                if ((bytData.Length % 2) != 0)
                {
                    MessageBox.Show("请输入4、8、12、16、20、24位16进制!", "QQ492384481");
                    return;
                }
                //写入TID
                if (EPCSDKHelper.FastWriteTagID(_handle, bytData.Length, bytData, 0))
                {
                    MessageBox.Show("快写成功", "QQ492384481");
                }
                else
                {
                    MessageBox.Show("快写失败", "QQ492384481");
                }

 5.FastWriteTag函数:
    语法:FastWriteTag(intPtr hCom,byte memBank,byte address,byte  wordCount,byte data,byte readerAddr)
    功能说明:快写标签。可以写保留区、EPC区和数据区。
    参数:
    hCom:串口句柄。
    memBank:要写的区域。
    address:要写区域中的地址。
    wordCount:要写入内容的长度。
    data:要写入的内容。
    readerAddr:读头地址,一台主机接多台读头时使用,接单台读头时置为0。

byte[] bytContent = Encoding.Default.GetBytes(this.txtPwd.Text);
                //快写
                if (EPCSDKHelper.FastWriteTag(_handle, 0x00, 2, 2, bytContent, 0))
                    this.lblMsg.Text = "密码设置成功";
                else
                    this.lblMsg.Text = "密码设置失败";