В настоящее время я в основном занимаюсь локализацией, помещая пары ключ-значение в файл Resources.resw
. Поэтому мне интересно, как мне локализовать строки, которые требуют форматирования, или произносить строки с разными порядками грамматики на разных языках. Возможно, будет легче понять, что я имею в виду с примерами ниже.
Например, так же, как предполагает эта часть в официальном документе для локализации, один язык может иметь формат даты
string.Format("Every {0} {1}", monthName, dayNumber);
, в то время как другой использует
string.Format("Every {1} {0}", monthName, dayNumber);
Каков наилучший способ локализации такой строки?
Вещи / грамматики могут быть намного сложнеечем этот пример. Предложение в официальном документе мне не нравится, потому что свидание может быть непредсказуемым. Или, может быть, вы можете перечислить дату, но это требует много работы. Или, скажем, у нас есть строка, которая принимает пользовательский ввод, например
string.Format("Do you want to delete {name}?", name);
На другом языке это может иметь следующий порядок грамматики
string.Format("You want to delete {name} do?", name);
Невозможно локализовать все предложение какПример предлагает в документе.
Единственный способ избежать ситуации, о которой я могу думать, это не вводить пользовательский ввод ....