Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Очень интересный случай по мнению автора, (edit by Pegas) 
:(
    Опции темы
СПАРТАК
Дата 14.4.2005, 22:02 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Имеется текстовый файл (набирал его не я). В этом файле имеется одна прелюбопытная строка. На глаз строка как строка и ничем от других не отличается (открываю в блокноте). Однако когда я начинаю считывать файл в программе (в TStringList, но это не суть важно) данная строка дьявольски преображается.

fer torro ----- так она выглядит в блокноте

fertt torro -----а так в моем списке, когда я шманаю его в отладчике.

Далее, открываю файл в WinHex. Побайтно смотрю:

fer(09)(09) torro(0A)(0D)-(конец строки)

Открываю в блокноте, начинаю щупать руками. Оказывается, сразу после fer идет какой-то (невидимый) символ длиной аж в 6 пробелов. Когда наводишь на этот симв курсор и пыт стереть 1 пробел, убивается символ полностью.

fer(странный символ на 6 пробелов) пробел torro

Спрашивается: что за черт?
  Вверх
chipset
Дата 14.4.2005, 22:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4071
Регистрация: 11.1.2003
Где: Seattle, US

Репутация: нет
Всего: 165



Модератор: а тему нельзя было содержательнее назвать?


--------------------
Цитата(Jimi Hendrix)
Well, I stand up next to a mountain
And I chop it down with the edge of my hand
PM MAIL WWW   Вверх
Step
Дата 14.4.2005, 22:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: нет
Всего: 25



а вы файлик дайте


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
СПАРТАК
Дата 14.4.2005, 22:08 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Можно было. Однако до этого я у вас всегда следовал этому правилу, поэтому решил сделать разок исключение.
  Вверх
СПАРТАК
Дата 14.4.2005, 22:11 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Как оперативно тут реагируют...
To Step. Я бы с удовольствием, да я не зарегестрирован и ваш mail мне недоступен.
  Вверх
Step
Дата 14.4.2005, 22:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: нет
Всего: 25



вообщем, а вы смотрели что за управляющий символ 9 его назначение


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
Guest
Дата 14.4.2005, 22:28 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











To Step

"Можно было. Однако до этого я у вас всегда следовал этому правилу, поэтому решил сделать разок исключение" - это я не вам, а модератору. Не подумайте чего...

У меня нет таблицы управляющих символов, чтобы сделать это.

А вообще странно, что вместо двух этих символов с аски кодом 09 считывается символы t, у которых аски совсем другой.
  Вверх
maxim1000
Дата 14.4.2005, 23:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

Репутация: нет
Всего: 110



насколько я припоминаю, 09 - символ табуляции...


--------------------
qqq
PM WWW   Вверх
Step
Дата 14.4.2005, 23:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: нет
Всего: 25



Цитата(Guest @ 14.4.2005, 22:28)
To Step
"Можно было. Однако до этого я у вас всегда следовал этому правилу, поэтому решил сделать разок исключение" - это я не вам, а модератору. Не подумайте чего...
У меня нет таблицы управляющих символов, чтобы сделать это.
А вообще странно, что вместо двух этих символов с аски кодом 09 считывается символы t, у которых аски совсем другой.

я тоже модератор, правда не этого раздела, и если честно то и место этой теме не совсем в этом разделе
а лист именно так табуляцую и отображают, есть у них такая особенность


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
chipset
Дата 14.4.2005, 23:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4071
Регистрация: 11.1.2003
Где: Seattle, US

Репутация: нет
Всего: 165



Да, maxim1000 прав, http://linuxland.itam.nsc.ru/misc/other19/index.html.
В таком случае всё понятно - символ табуляции имеет ширину нескольких пробелов smile
В си представляется как \t.


--------------------
Цитата(Jimi Hendrix)
Well, I stand up next to a mountain
And I chop it down with the edge of my hand
PM MAIL WWW   Вверх
СПАРТАК
Дата 15.4.2005, 00:05 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата(Step @ 14.4.2005, 23:21)
а лист именно так табуляцую и отображают, есть у них такая особенность

Идиотская надо сказать особенность. И главное - ни слова в документации.
По мне, лучше писать \09. Тогда можно было бы догалаться, что это специфическое обозначение аски управляющего символа.

Спасибо всем, помогли разобраться.
  Вверх
Guest
Дата 5.5.2005, 20:40 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Ну опять из той же серии. Теперь у меня символы уже не появляются, а исчезают
Код

String f="C:\rrr";
TStringList *u = new TStringList;
u->LoadFromFile(f);


Когда смотрю в отладчике, то вижу, что вместо "C:\rrr" в f сидит "C:rrr", ну и соответственно файл не открывается.


  Вверх
Guest
Дата 5.5.2005, 20:54 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Пример не совсем удачный. Когда C:\rrr -все нормально, а когда, например C:\eee - уже нет!!!

И C:\uuu, C\sss.... все, что начинается не на r.
  Вверх
tigger
Дата 6.5.2005, 13:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 456
Регистрация: 30.4.2005

Репутация: 2
Всего: 4



В С++ надо писать "C:\\rrr" или "C:\\eee" и не мудрствуй лукаво...


--------------------
user posted image
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.1533 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.