Сравните две строки на иврите по алфавиту

Я знаю, что могу использовать String.Compare(StringA, StringB), чтобы сравнить две строки и посмотреть, какая из них идет первой по алфавиту

Однако я попробовал это с двумя строками на иврите, и он не сравнивается по алфавиту.

Есть ли другой способ сделать это, или мне нужно что-то изменить с кодировкой?


person Dman    schedule 12.05.2015    source источник


Ответы (1)


Пытаться

String.Compare(StringA, StringB, new CultureInfo("he"), CompareOptions.None)

где he - код для иврита.

Для Compare есть несколько перегрузок. Вот документация для приведенного выше примера. .

person Daniel A. White    schedule 12.05.2015
comment
comment
Мне просто интересно. Я пробовал ваш код, и он сказал, что культура не найдена. - person Polynomial Proton; 12.05.2015
comment
Извините за беспокойство, я делаю это просто для обучения. Но даже с HE не работает. dotnetfiddle.net/r3P849 Я уверен, что что-то делаю не так :) - person Polynomial Proton; 12.05.2015
comment
Вы пробовали строчные буквы (он), как предложил Даниэль? Это объясняется в параграфе, на который он ссылается. - person Justin Ryan; 12.05.2015
comment
Или попробуйте he-IL в качестве вашего варианта. - person Daniel A. White; 12.05.2015
comment
@TheUknown .Compare возвращает int32. так что если они равны его 0. - person Daniel A. White; 13.05.2015