• 大小: 36KB
    文件类型: .rar
    金币: 2
    下载: 1 次
    发布日期: 2021-06-11
  • 语言: C#
  • 标签: CRC  异或校验  

资源简介

目前在做和GPS通讯协议相关的项目项目中有用到异或和校验的部分就自己写了小工具包含源码给需要的朋友。 输入内容为 16进制字符串 输出也是16进制的字符串

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace CRC
{
    public partial class FormCRC : Form
    {
        public FormCRC()
        {
            InitializeComponent();
        }

        private void FormCRC_Load(object sender EventArgs e)
        {

        }
        /// 
        /// CRC异或校验 add by heiyanfei 2013-06-19
        /// 

        /// 命令字符串
        /// 
        private static string CRC(string cmdString)
        {
            try
            {
                //CRC寄存器
                int CRCCode = 0;
                //将字符串拆分成为16进制字节数据然后两位两位进行异或校验
                for (int i = 1; i < cmdString.Length / 2; i++)
                {
                    string cmdHex = cmdString.Substring(i * 2 2);
                    if (i == 1)
                    {
                        string cmdPrvHex = cmdString.Substring((i - 1) * 2 2);
                        CRCCode = (byte)Convert.ToInt32(cmdPrvHex 16) ^ (byte)Convert.ToInt32(cmdHex 16);
                    }
                    else
                    {
                        CRCCode = (byte)CRCCode ^ (byte)Convert.ToInt32(cmdHex 16);
                    }
                }
                return Convert.ToString(CRCCode 16).ToUpper();//返回16进制校验码
            }
            catch
            {
                throw;
            }
        }

        private void btnConvert_Click(object sender EventArgs e)
        {
            try
            {
                txtCRCCode.Text = CRC(txtCMDString.Text.Replace(“ “ ““));
            }
            catch
            {
                MessageBox.Show(“校验失败请检查字符串是否包含特殊字符“);
            }
        }
    }
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       9216  2013-06-19 18:51  CRC\CRC\bin\Debug\CRC.exe

     文件      24064  2013-06-19 18:51  CRC\CRC\bin\Debug\CRC.pdb

     文件      11608  2013-06-19 21:10  CRC\CRC\bin\Debug\CRC.vshost.exe

     文件       3568  2013-06-19 18:44  CRC\CRC\CRC.csproj

     文件       2048  2013-06-19 18:51  CRC\CRC\FormCRC.cs

     文件       5170  2013-06-19 18:51  CRC\CRC\FormCRC.Designer.cs

     文件       5817  2013-06-19 18:51  CRC\CRC\FormCRC.resx

     文件        466  2013-06-19 21:10  CRC\CRC\obj\x86\Debug\CRC.csproj.FileListAbsolute.txt

     文件       9216  2013-06-19 18:51  CRC\CRC\obj\x86\Debug\CRC.exe

     文件        180  2013-06-19 18:51  CRC\CRC\obj\x86\Debug\CRC.FormCRC.resources

     文件      24064  2013-06-19 18:51  CRC\CRC\obj\x86\Debug\CRC.pdb

     文件        180  2013-06-19 18:44  CRC\CRC\obj\x86\Debug\CRC.Properties.Resources.resources

     文件       6023  2013-06-19 18:51  CRC\CRC\obj\x86\Debug\DesignTimeResolveAssemblyReferencesInput.cache

     文件       4088  2013-06-19 18:51  CRC\CRC\obj\x86\Debug\ResGen.read.1.tlog

     文件        602  2013-06-19 18:51  CRC\CRC\obj\x86\Debug\ResGen.write.1.tlog

     文件        486  2013-06-19 18:26  CRC\CRC\Program.cs

     文件       1356  2013-06-19 18:26  CRC\CRC\Properties\AssemblyInfo.cs

     文件       2856  2013-06-19 18:26  CRC\CRC\Properties\Resources.Designer.cs

     文件       5612  2013-06-19 18:26  CRC\CRC\Properties\Resources.resx

     文件       1088  2013-06-19 18:26  CRC\CRC\Properties\Settings.Designer.cs

     文件        249  2013-06-19 18:26  CRC\CRC\Properties\Settings.settings

     文件        851  2013-06-19 18:26  CRC\CRC.sln

    ..A..H.     10240  2013-06-19 18:43  CRC\CRC.suo

     目录          0  2013-06-19 18:26  CRC\CRC\obj\x86\Debug\TempPE

     目录          0  2013-06-19 18:51  CRC\CRC\obj\x86\Debug

     目录          0  2013-06-19 18:44  CRC\CRC\bin\Debug

     目录          0  2013-06-19 18:26  CRC\CRC\bin\Release

     目录          0  2013-06-19 18:26  CRC\CRC\obj\x86

     目录          0  2013-06-19 18:26  CRC\CRC\bin

     目录          0  2013-06-19 18:26  CRC\CRC\obj

............此处省略6个文件信息

评论

共有 条评论