Мне нужен эквивалентный код swift 4.2 для моего существующего кода C #.
У меня есть приложение на C #, которое связывается с устройством для проверки карт.
Я всегда добавляю БАЙТ после каждой инструкции для LRC.
Я включаю мой код C #. (обратите внимание, что он имеет операцию XOR)
Вот пример инструкции для сброса верикона (в шестнадцатеричном формате)
0237320306, что переводится как STX-3732-ETX-LRC
для вычисления LRC. , вы отправляете все между STX и LRC -> 373203
Ответ, конечно, 06
// здесь работает код C #
private string GetChecksum(string s)
{
int checksum = 0;
foreach (char c in GetStringFromHex(s))
{
checksum ^= Convert.ToByte(c);
}
return checksum.ToString("X2");
}
private string GetStringFromHex(string s)
{
string result = "";
string s2 = s.Replace(" ", "");
for (int i = 0; i < s2.Length; i += 2)
{
result += Convert.ToChar(int.Parse(s2.Substring(i, 2), System.Globalization.NumberStyles.HexNumber));
}
return result;
}
/// Я нашел некоторый код для цели C, но я не знаю, работает ли он, и я действительно новичок в мире яблок, поэтому я хочу придерживаться SWIFT
Рассчитать LRC в Задаче c
, пожалуйста, помогите мне написать этот код в Swift 4.2