Esempio n. 1
0
        /// <summary>
        /// 将指定编码格式的数组转换成string。目前支持HEX,ASCII,UTF8,GB2312。HEX以空格隔开
        /// </summary>
        /// <param name="_EncodeType"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        string StringToByteWithEncoding(DataEncode _EncodeType, byte[] data)
        {
            string strResult = "";

            switch (_EncodeType)
            {
            case DataEncode.Hex:
                StringBuilder sb = new StringBuilder();
                for (int i = 0; i < data.Length; i++)
                {
                    sb.AppendFormat("{0:x2} ", data[i]);
                }
                strResult = sb.ToString().Trim().ToUpper();
                break;

            case DataEncode.ASCII:
                strResult = new ASCIIEncoding().GetString(data);
                break;

            case DataEncode.UTF8:
                strResult = new UTF8Encoding().GetString(data);
                break;

            case DataEncode.GB2312:
                strResult = Encoding.GetEncoding("GB2312").GetString(data);
                break;
            }
            return(strResult);
        }
Esempio n. 2
0
        private void DataEncodeTestOneDataRow(string inputString, IEnumerable <bool> expected)
        {
            EncodationStruct   eStruct      = DataEncode.Encode(inputString, ErrorCorrectionLevel.H);
            IEnumerable <bool> actualResult = eStruct.DataCodewords;

            BitVectorTestExtensions.CompareIEnumerable(actualResult, expected, "string");
        }
Esempio n. 3
0
        /// <summary>
        /// 将string转换成指定编码格式的数组。目前支持HEX,ASCII,UTF8,GB2312。HEX需以空格隔开
        /// </summary>
        /// <param name="_EncodeType"></param>
        /// <param name="str"></param>
        /// <returns></returns>
        byte[] ByteToStringWithEncoding(DataEncode _EncodeType, string str)
        {
            byte[] data = null;
            switch (_EncodeType)
            {
            case DataEncode.Hex:
                string[] HexStr = str.Trim().Split(' ');
                data = new byte[HexStr.Length];
                for (int i = 0; i < HexStr.Length; i++)
                {
                    data[i] = (byte)(Convert.ToInt32(HexStr[i], 16));
                }
                break;

            case DataEncode.ASCII:
                data = new ASCIIEncoding().GetBytes(str);
                break;

            case DataEncode.UTF8:
                data = new UTF8Encoding().GetBytes(str);
                break;

            case DataEncode.GB2312:
                data = Encoding.GetEncoding("GB2312").GetBytes(str);
                break;

            default: break;
            }
            return(data);
        }
        private void TestOneCase(string inputString, ErrorCorrectionLevel eclevel, IEnumerable <bool> expected)
        {
            EncodationStruct encodeStruct = DataEncode.Encode(inputString, eclevel);

            IEnumerable <bool> actualResult = ECGenerator.FillECCodewords(encodeStruct.DataCodewords, encodeStruct.VersionDetail);

            BitVectorTestExtensions.CompareIEnumerable(actualResult, expected, "string");
        }
Esempio n. 5
0
 private void RbtnHex_CheckedChanged(object sender, EventArgs e)
 {
     if (rbtnHex.Checked)
     {
         EncodeType = DataEncode.Hex;
         绘制接收数据曲线ToolStripMenuItem.Enabled = true;
     }
 }
Esempio n. 6
0
 private void RbtnASCII_CheckedChanged(object sender, EventArgs e)
 {
     if (rbtnASCII.Checked)
     {
         EncodeType = DataEncode.ASCII;
         绘制接收数据曲线ToolStripMenuItem.Enabled = false;
         _drawChart = false;
         splitContainer1.Panel2Collapsed = true;
     }
 }
Esempio n. 7
0
        internal static BitMatrix Encode(string content, ErrorCorrectionLevel errorLevel)
        {
            EncodationStruct encodeStruct = DataEncode.Encode(content, errorLevel);

            BitList codewords = ECGenerator.FillECCodewords(encodeStruct.DataCodewords, encodeStruct.VersionDetail);

            TriStateMatrix triMatrix = new TriStateMatrix(encodeStruct.VersionDetail.MatrixWidth);

            PositioninngPatternBuilder.EmbedBasicPatterns(encodeStruct.VersionDetail.Version, triMatrix);

            triMatrix.EmbedVersionInformation(encodeStruct.VersionDetail.Version);
            triMatrix.EmbedFormatInformation(errorLevel, new Pattern0());
            triMatrix.TryEmbedCodewords(codewords);

            return(triMatrix.GetLowestPenaltyMatrix(errorLevel));
        }
Esempio n. 8
0
        internal static BitMatrix Encode(IEnumerable <byte> content, ErrorCorrectionLevel errorLevel)
        {
            EncodationStruct encodeStruct = DataEncode.Encode(content, errorLevel);

            return(ProcessEncodationResult(encodeStruct, errorLevel));
        }
Esempio n. 9
0
 public string ToPostData()
 {
     return(DataEncode.EncodeData(string.Format("__EVENTTARGET={0}&__EVENTARGUMENT={1}&__LASTFOCUS={2}&__VIEWSTATE={3}&__VIEWSTATEGENERATOR={4}&ctl00$Header$cntrlLogin$txtBoxLogin={5}&ctl00$Header$cntrlLogin$chkBoxRememberMe={6}&ctl00$Header$cntrlLogin$txtBoxPassword={7}&ctl00$Header$cntrlLogin$btnLogin={8}&ctl00$cntrlHeaderMenu$drpLanguage={9}&ctl00$MAIN$ctl04$AgeFrom={10}&ctl00$MAIN$ctl04$AgeTo={11}&ctl00$MAIN$ctl04$ctrlCategorizedCoutries={12}", new object[] { this.__EVENTTARGET, this.__EVENTARGUMENT, this.__LASTFOCUS, this.__VIEWSTATE, this.__VIEWSTATEGENERATOR, this.ctl00_Header_cntrlLogin_txtBoxLogin, this.ctl00_Header_cntrlLogin_chkBoxRememberMe, this.ctl00_Header_cntrlLogin_txtBoxPassword, this.ctl00_Header_cntrlLogin_btnLogin, this.ctl00_cntrlHeaderMenu_drpLanguage, this.ctl00_MAIN_ctl04_AgeFrom, this.ctl00_MAIN_ctl04_AgeTo, this.ctl00_MAIN_ctl04_ctrlCategorizedCoutries })));
 }
Esempio n. 10
0
        internal static BitMatrix Encode(string content, ErrorCorrectionLevel errorLevel, MaskPatternType maskPatternType)
        {
            EncodationStruct encodeStruct = DataEncode.Encode(content, errorLevel);

            return(ProcessEncodationResult(encodeStruct, errorLevel, maskPatternType));
        }