Чтобы отладить проблему в моем коде, я объявил следующие две строки, считая, что они будут эквивалентны:
String print = "8A9B485ECDC56B6E0FD023D6994A57EEC49B0717";
String newPrint = thumbprint.Trim().Replace(" ", "").ToUpper();
Я обнаружил, что это не так. Отлично, это источник моей проблемы. Тем не менее, я проверяю вещи в непосредственном окне (в строке после деклараций) и не понимаю, что происходит. Вот результат:
print
"8A9B485ECDC56B6E0FD023D6994A57EEC49B0717"
newPrint
"8A9B485ECDC56B6E0FD023D6994A57EEC49B0717"
String.Compare(print, newPrint);
0
print == newPrint
false
print.Equals(newPrint)
false
а? Почему они не равны?
изменить:
Мне нужно использовать "отпечаток" в качестве базы. Пользователь вводит строку. Я просто использую "newPrint" в качестве временной переменной для удержания урезанного/выровненного значения. печать - ожидаемый результат.