Перейти к содержимому

Код символа 160 что за символ

  • автор:

Код символа 160 что за символ

  • Facebook
  • Twitter
  • Github
  • Google+

ASCII Table

July 20, 2018 | 1 Tags | 0 Comment

ASCII Table

ASCII is an acronym for American Standard Code for information interchange developed by the American National Standards Institute (ANSI). ASCII is the most common format to represent the text files.

In an ASCII file alphabetic, numeric or special characters is represent with 7-bit binary numbers. Since ASCII uses 7-bit, it only supports 2^7 = 128 character codes (0 to 127). Therefore, the standard ASCII character code set is limited to 128 characters.

There is an Extended ASCII set that supports 8-bit binary representation to hold some of the special characters and this extended set will represent character codes form 128 — 255.

Код символа 160 что за символ

Лучший по профессии 2015

Лучший по профессии 2014

Лучший по профессии AXAWARD 2013

Лучший по профессии 2011

Лучший по профессии 2009

ну. в некоторых странах запятая используется как разделитель разрядов.
так что в общем случае нужно чуть тщательнее.
но в данном конкретном случае вполне пойдет.

для исследований стоит также заглянуть в Global::str2numOk и в Global::str2intOk.
там народ вообще через регулярку проверяет.
но если уж через interop, то можно использовать нормальные функции преобразования с учетом cultural context из .net

В общем случае, задача конвертации строки в число — не имеет решения. Преобразование всегда будет только для конкретных (локальных, частных) условий. Только если точно знать, в каком формате ожидать символьную строку для преобразования

Например, даже по приведенному коду можем получить не корректное преобразование в зависимости от формата строки

info(strFmt(‘%1’, str2num(‘1e+5’))); // Не корректное преобразование
info(strFmt(‘%1’, str2num(‘1.0e+5’))); // Корректное преобразование

А по поводу "некоторых стран", некоторые бухгалтера в качестве разделителя целой и дробной части числа используют дефис (минус)

Что означает символ 160 в моем исходном коде?

Я форматирую числа в строку, используя следующую строку формата «# #.##», в какой-то момент мне нужно вернуть эти числовые строки, например (1 234 567), во что-то вроде 1234567. Я пытаюсь удалить пустые символы но обнаружил, что

по какой-то причине и строка остается 1 234 567. Посмотрев на строку, я обнаружил, что

значение[1] равно 160.

Мне было интересно, что означает значение 160?

В Windows есть хороший апплет для обнаружения таких кодовых точек Unicode. Используйте Charmap.exe — Hans Passant

Я пытался запустить его, но не смог на Windows 2008 — gyurisc

@HansPassant Ты сказал апплет в 2010 году? — asyncwait

8 ответы

Ответ — заглянуть Таблицы кодов Unicode — где вы найдете Таблица дополнений Latin-1; это показывает, что U + 00A0 (160 в соответствии с вашим заголовком, а не 167 в соответствии с телом) является неразрывным пробелом.

Я посмотрел на «таблицу дополнений Latin-1», на которую вы ссылались. Я вижу строку «00A0», но нигде не сказано, что это 160 символов. У меня была та же проблема, что и у gyurisc, и ваш ответ решил ее, но как вы узнали, что U + 00A0 относится к 160? — Макс С.

@MaxS.: Hex 00A0 = десятичное число 160. — Джон Скит

Возможно, вы могли бы использовать регулярное выражение для замены этих пустых символов:

символьный код 160 был бы  

value.Replace(((char)160).ToString(),»») для меньшего набора текста — Cryss

Это быстрый (и довольно читаемый) способ удаления любых символов, классифицированных как пробелы, с помощью Char.IsWhiteSpace :

As дбемерлин указывает, что если вы знаете, что вам понадобятся только числа из ваших данных, вам лучше использовать Char.IsNumber или еще более ограничительный Char.IsDigit :

Если вам нужны числа и десятичные разделители, должно хватить чего-то вроде этого:

ответ дан 23 мая ’17, 13:05

Как насчет десятичного разделителя? Будут ли Char.IsDigit() и Char.IsNumber() пропускать это? — гюриск

@AskAboutGadgets.com, да, IsNumber и IsDigit возвращают false для десятичного разделителя. Я добавил новый пример — Колин Пикард

Я бы предпочел «||» в условии вместо «|» для удобочитаемости. — Ксантикс

Я бы предложил использовать версия перегрузки char:

Решение с расширенными методами:

И его можно использовать с этим кодом:

ответ дан 27 мар ’14, в 17:03

Разве не было бы предпочтительным методом заменить все пустые символы (и это то, что хотел сделать спрашивающий) методом регулярных выражений, который уже опубликовал Рубенс?

или что предлагает Expresso:

Разница здесь в том, что \p заменяет любой вид пробела или невидимого разделителя, тогда как \p заменяет пробел, который невидим, но занимает место. Вы можете прочитать это здесь (раздел Категории Unicode):

Использование RegEx имеет то преимущество, что требуется только одна команда для замены обычных пробелов, а не только неразрывного пробела, как описано в некоторых ответах выше.

Если производительность — это путь, то, конечно, следует рассмотреть другие методы, но здесь это выходит за рамки.

Что означает символ 160 в моем исходном коде?

Я форматирования чисел в строку, используя следующую строку формата «# #. ##», в какой-то момент мне нужно вернуть эти числовые строки, например (1 234 567), примерно в 1234567. Я пытаюсь пустые символы, но обнаружили, что

по какой-то причине, и строка остается 1 234 567. После просмотра строки я обнаружил, что

Мне было интересно, что означает значение 160?

8 ответов

Ответ: Unicode Code Charts — где вы найдете Таблица дополнений Latin-1; это показывает, что U + 00A0 (160 в соответствии с вашим названием, а не 167 в соответствии с телом) является неразрывным пространством.

Возможно, вы могли бы использовать регулярное выражение для замены этих пустых символов:

char code 160 будет  

Это быстрый (и достаточно читаемый) способ удаления любых символов, классифицированных как пробел, с помощью Char.IsWhiteSpace :

Как dbemerlin указывает, если вы знаете, что вам нужны только цифры из ваших данных, вам лучше использовать Char.IsNumber или еще более ограничительный Char.IsDigit :

Если вам нужны цифры и децимальные разделители, то должно быть достаточно:

Я бы предложил использовать char версию перегрузки:

Не был бы предпочтительным методом для замены всех пустых символов (и это то, что хотел задать вопросник) с помощью метода Regex, который уже опубликовал Rubens?

или то, что предлагает Expresso:

Различие заключается в том, что \p заменяет любой вид пробела или невидимого разделителя, тогда как \p заменяет пробельный символ, невидимый, но занимает пробел. Вы можете прочитать его здесь (раздел Unicode Categories):

Использование RegEx имеет то преимущество, что требуется только одна команда, чтобы заменить также обычные пробелы, а не только неразрывное пространство, как описано в некоторых ответах выше.

Если производительность — это путь, то, конечно, следует учитывать другие методы, но здесь это не доступно.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

From $34/Day — Car Rental HPN With Zero Terminal Shuttle