![]() |
Модераторы: Snowy, MetalFan, bems, Poseidon |
![]() ![]() ![]() |
|
PsiMagistr |
|
||||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 479 Регистрация: 31.12.2009 Репутация: 1 Всего: 1 |
Ребята, если вам не сложно обясните мне следующую вещь.
Записываю строку в файл через FileStream: (Я в курсе что есть более удобные способы) Объявляем глобально:
Обработчик кнопки записи:
А теперь пытаемся прочесть. Обработчик кнопки чтения:
Я думал, что допустим запишем в файл строку из 255 символов, а считаем меньшей по размеру переменной только первые 4. Не тут то было. Получил каракули. Если переменная для чтения равна по длине переменной для записи - все проходит как по маслу... Это сообщение отредактировал(а) PsiMagistr - 9.7.2010, 18:01 -------------------- "Арфы нет? Возьмите бубен! Ребята, будем жить!" (с) "В бой идут одни старики" --- "ИЕ" - один из самых сумасшедших браузеров в нашей галактике. |
||||||
|
|||||||
Amphiluke |
|
|||
![]() ☽ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1253 Регистрация: 26.8.2009 Репутация: 6 Всего: 112 |
А вы помните, что символ с индексом 0 содержит длину строки?
Вот вы читаете кусок строки, а нулевой символ этой строки неизменно остается равным длине исходной строки. Попробуйте:
|
|||
|
||||
PsiMagistr |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 479 Регистрация: 31.12.2009 Репутация: 1 Всего: 1 |
т.е. Идет попытка считывания 0 символа?
Я признаться не совсем понял. Это сообщение отредактировал(а) PsiMagistr - 9.7.2010, 18:50 -------------------- "Арфы нет? Возьмите бубен! Ребята, будем жить!" (с) "В бой идут одни старики" --- "ИЕ" - один из самых сумасшедших браузеров в нашей галактике. |
|||
|
||||
Amphiluke |
|
|||
![]() ☽ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1253 Регистрация: 26.8.2009 Репутация: 6 Всего: 112 |
Ну, вы сначала пишете в файл, допустим, строку 'qwerty'. Записывается 7 байтов, из которых первый (нулевой) — #6.
Затем прочитываете строку типа string[4]. Ее размер — 5. Нулевой символ строки устанавливается в #6, что не соответствует изначальному #4. Отсюда лишние каракули в хвосте. |
|||
|
||||
PsiMagistr |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 479 Регистрация: 31.12.2009 Репутация: 1 Всего: 1 |
Amphiluke, БЛИН, не ну какой дуб, однако. СПАСИБО Большое. Тупею от жары, чисто тупею. -------------------- "Арфы нет? Возьмите бубен! Ребята, будем жить!" (с) "В бой идут одни старики" --- "ИЕ" - один из самых сумасшедших браузеров в нашей галактике. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |