Гость
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Мистика со string / 24 сообщений из 24, страница 1 из 1
08.07.2016, 13:07
    #39270536
1man
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
string key = GetKey();
if (key != "10257")
{
действия
}

В дебагере вижу, что как и ожидалось key = 10257, но... идет переход на "действия" =8@[]
Стоят Trim(), лишних пробелов нет, от букв избавился, нули не "О", пробовал Compare(...).
...
Рейтинг: 0 / 0
08.07.2016, 13:32
    #39270554
buser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
1man, чудо... пользы было бы больше, еслиб скриншот из студии был бы приложен с точкой останова и видными аутос (это сарказм)...
...
Рейтинг: 0 / 0
08.07.2016, 14:05
    #39270585
1man
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
buser,
мне уже пофиг на сарказм. Мир рушится!
...
Рейтинг: 0 / 0
08.07.2016, 14:45
    #39270626
1man
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
Коллеги,
вот что удалось установить (см.рис.)
Единичку не узнает, и далее, начиная с i=3 сравнивает последующий с предыдущим символами, например 3 с 1, 0 с 3 и т.д.
Однако, легче пока не стало :(
...
Рейтинг: 0 / 0
08.07.2016, 14:54
    #39270637
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
Похоже есть какие-то невидимые символы в том что возвращает GetKey();
...
Рейтинг: 0 / 0
08.07.2016, 15:06
    #39270648
1man
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
Да, похоже. Стринг слит из двух стрингов, первый как раз кончается после "...97". Безмерно удивлен, что string - это не то что я вижу в отладчике. Ни разу не слышал о невидимых символах в стринге. В GetKey при слиянии применил (как мудрые учили) string.Format("{0}{1}", .... вместо "..." + "..." Но не помогло.
...
Рейтинг: 0 / 0
08.07.2016, 15:11
    #39270655
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
Коды от 0 до 31 это непечатные символы, наверное отладчик их просто игнорирует при показе.
...
Рейтинг: 0 / 0
08.07.2016, 15:17
    #39270666
1man
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
Я её победил!!!

В GetKey, до слияния строк, при формировании отдельных строк добавил в конце ToString() Теперь выглядит так:
(Convert.ToString(queryObj["SerialNumber"])).ToString()

Т.е. строку надо ещё раз преобразовать в строку :):):)
Убил на это целый день, чуть не свихнулся!
Спасибо всем за внимание и посильную помощь-поддержку.
...
Рейтинг: 0 / 0
08.07.2016, 15:19
    #39270669
1man
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
Dima T,
Видимо да, проверять уже ... ну не могу... Эти непечатные символы столько непечатных выражений вызвали... :)
Персональное Вам спасибо!
...
Рейтинг: 0 / 0
08.07.2016, 15:41
    #39270695
1man
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
А нифига не победил. Опять не работает... Попробовал через StringBuilder работать. Не помогло.
Простите за наивный вопрос, я не профи, 31 - это что за символ?
...
Рейтинг: 0 / 0
08.07.2016, 15:45
    #39270698
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
ХЗ что за символ. Просто вырежи его из строки.
...
Рейтинг: 0 / 0
08.07.2016, 15:52
    #39270706
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
1man31 - это что за символ?
US (Unit Separator) - применялся в телеграфном аппарате
...
Рейтинг: 0 / 0
08.07.2016, 16:02
    #39270721
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
Код: c#
1.
string key = GetKey().Replace(((Char)31).ToString(), "");
...
Рейтинг: 0 / 0
08.07.2016, 16:15
    #39270734
1man
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
Dima T,
Огромное спасибо! Кажись помогло. Вы спасли моё ощущение целостности Мироустройства :)
...
Рейтинг: 0 / 0
08.07.2016, 17:26
    #39270803
1man
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
Может кому не дай бог пригодится, полное избавление от непечатных символов произошло после

string key = GetKey();
for (int i = 0; i < key.Length; i++)
{
if (key[i] <= (Char)31)
key = key.Replace(key[i].ToString(), "");
}
...
Рейтинг: 0 / 0
08.07.2016, 17:45
    #39270824
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
Код: c#
1.
key = string.Join("", key.Where(n => n > (char)31))



ЗЫ: Как мне оформить свое сообщение?
...
Рейтинг: 0 / 0
08.07.2016, 17:45
    #39270825
buser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
1man, где-то на стеке, что переполнен...
Код: c#
1.
key = Regex.Replace(key, "[^ -~]", "")
...
Рейтинг: 0 / 0
08.07.2016, 20:48
    #39270886
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
1manМожет кому не дай бог пригодится, полное избавление от непечатных символов произошло после
главное - не избавиться от полезных переводов строки и табуляций
...
Рейтинг: 0 / 0
08.07.2016, 21:12
    #39270898
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
Изопропил1manМожет кому не дай бог пригодится, полное избавление от непечатных символов произошло после
главное - не избавиться от полезных переводов строки и табуляций
переводы строк не мешали никогда, а табуляции это жопа, скопипастят юзеры с ними и потом капец при поиске. Есть еще прикол в виде символа с кодом 160, показывается как пробел, копипастится, но это ни разу не пробел. Такую чешую надо вычищать перед сохранением в базу.
...
Рейтинг: 0 / 0
08.07.2016, 21:21
    #39270900
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
Dima Tно это ни разу не пробел
таки пробел - Non-breaking space

а чешуи гораздо больше в другом месте - в сравнении юникодных строк - http://unicode.org/reports/tr15/
...
Рейтинг: 0 / 0
08.07.2016, 21:51
    #39270917
Cat2
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
1man(Char)31)
Ну да 32 -это пробел. Все что ниже должно быть уничтожено!
...
Рейтинг: 0 / 0
09.07.2016, 00:22
    #39270985
Иммануил Кант
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
не хотел бы я с такой строкой повстречаться
...
Рейтинг: 0 / 0
09.07.2016, 00:24
    #39270986
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
Иммануил Кантне хотел бы я с такой строкой повстречатьсяоткуда то эта строка приехала
...
Рейтинг: 0 / 0
09.07.2016, 05:34
    #39271013
Сон Веры Павловны
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мистика со string
Cat2Ну да 32 -это пробел. Все что ниже должно быть уничтожено!
А если это х0D;#х0А; ? Или х09; ? Это могут быть довольно-таки значащие значки.
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Мистика со string / 24 сообщений из 24, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]