Интернационализация: введен ли IP-адреса в одном формате для всех культур?

Я знаю, что адреса IPv4 записываются с использованием десятичных знаков. Я не знаю, является ли каждый из числовых символов, введенных для IP-адреса, всегда арабской цифрой (например, 1,2,3...) или если для ввода IP-адреса обычно принят цифровой символ не ASCII

Например, если бы у меня было поле ввода адреса IPv4, локализованное для китайской культуры, было бы разумным только ожидать, чтобы арабские цифры вводились для каждого октета? Должен ли я также ожидать, что символы, отличные от ASCII, также являются числовыми?

  • Это поле предназначено исключительно для ввода IP-адреса и не будет принимать имена хостов.

Ответ 1

Юникод и символы ASCII одинаковы для чисел. Так что да, IP-адрес должен быть одного формата для всех культур.

Формат с пунктиром-октетом является международным стандартом, это не должно отклоняться от культуры.

Ответ 2

а. Точечное обозначение для числовых IP-адресов является просто сокращенным/простым чтением для прямого двоичного эквивалента.

б. Это программный идентификатор, а не поле на основе URI/текста - так что не вопрос интернационализации.

Итак, да, арабские цифры полностью.

Я думаю, что у вас будет неприятность в тот день, когда вы можете набрать С# (или что-нибудь еще) на другом языке и все равно работать без проблем. Ex. HelloWorld() и नमस्तेविश्व() - хинди

Но так и мы все:)

EDIT: просмотрел комментарий о десятичных точках - не позволяйте ему вводить данные. Опять же, поскольку это программный идентификатор, поэтому десятичные знаки являются фиксированной частью обозначений.

Ответ 3

Формат IP-адреса стандартизирован и должен быть одинаковым для всех культур, поскольку сетевые устройства действительно зависят от этого точного формата. Таким образом, очевидный ответ: да, вы можете ожидать регулярные числа и точки. Существуют и другие соглашения, например, вы можете использовать восьмеричные IP-адреса, но, честно говоря, я не вижу причин принимать что-либо, кроме обычного формата IP-адреса.