private void button2_Click(object sender, EventArgs e) { EncodedMessage.Text = ""; BinaryString.Text = ""; ASCIIGrid.DataSource = ASCII.GetASCIIs(FrequencyRecord.GetFrequencyDictionary(InputMessage2.Text)); foreach (var ch in InputMessage2.Text) { if (Convert.ToString(ch, 2).Length == 6) { BinaryString.Text += "00" + Convert.ToString(Encoding.GetEncoding(CultureInfo.CurrentCulture.TextInfo.ANSICodePage).GetBytes(new char[] { ch })[0], 2); } else { BinaryString.Text += Convert.ToString(Encoding.GetEncoding(CultureInfo.CurrentCulture.TextInfo.ANSICodePage).GetBytes(new char[] { ch })[0], 2); } } HamGrid.DataSource = Hamm.GetHammings(SplitString(BinaryString.Text, 4)); foreach (var item in Hamm.GetHammings(SplitString(BinaryString.Text, 4))) { EncodedMessage.Text += item.Code; } }
public static Hamm[] GetHammings(List <String> strings) { var result = new List <Hamm>(); foreach (var item in strings) { var record = new Hamm(); record._char = item; record._code = Hamming.Ham(item); result.Add(record); } return(result.ToArray()); }