![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
ZC1989 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 468 Регистрация: 17.7.2006 Где: Нижний Новгород; Россия Репутация: нет Всего: 1 |
Здрасть...
тема такая, есть буфер в котором хранится содержимое некоего файла, я его посимвольно перебираю и удаляю ненужные мне данные, так как пробел и табуляция, но вот с пробелом проблема почему-то '\n' игнорируется...
-------------------- озарение настанет позже, когда поймём больше... (Сo. Stigmata) |
|||
|
||||
HappyLife |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 642 Регистрация: 17.5.2006 Репутация: 3 Всего: 8 |
Я не понял что тебе нужно удалить...
Если пробелы, то как они могут исчезнуть, если ты \n - заменяешь пробелом и \t заменяешь пробелом.. \n - это перевод на другую строку.... А точнее в сочетании \r\n |
|||
|
||||
Sartorius |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1568 Регистрация: 18.7.2006 Где: Ivory tower Репутация: 8 Всего: 37 |
Как читаешь из файла? и если можно весь код покажи...
|
|||
|
||||
Xenon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1529 Регистрация: 12.4.2006 Репутация: 11 Всего: 50 |
ZC1989, я не понял что ты делаешь ... Ты просто заменяешь пробелами ... Если тебе их нужно вырезать, то тут нужно новый массив создавать, в который ты добавишь все, кроме пробелов (то есть самих пробелов и того, что ты ими заменил)
|
|||
|
||||
ZC1989 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 468 Регистрация: 17.7.2006 Где: Нижний Новгород; Россия Репутация: нет Всего: 1 |
мне нужно по сути из многострокового файла сдалть одну большую строку... а читаю я этот файл из архива в буфер
-------------------- озарение настанет позже, когда поймём больше... (Сo. Stigmata) |
|||
|
||||
Sartorius |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1568 Регистрация: 18.7.2006 Где: Ivory tower Репутация: 8 Всего: 37 |
ZC1989, я спросил про функцию , которой ты это делаешь... покажи код.. \n не всегда остается после чтения. Он у тя в буффере есть? Посмотри под отладчиом
|
|||
|
||||
HappyLife |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 642 Регистрация: 17.5.2006 Репутация: 3 Всего: 8 |
Тогда удаляй Cочетание \r\n
|
|||
|
||||
np9mi7 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 553 Регистрация: 17.8.2003 Где: Volgograd, Russia Репутация: 5 Всего: 10 |
Поскольку в исходном коде есть new, делаю вывод что это С++, вот в этом чудном языке есть такой алгоритм, называется он std::remove;
|
|||
|
||||
Rockie |
|
||||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1143 Регистрация: 23.4.2006 Репутация: 8 Всего: 31 |
ZC1989, а если кидать данные с помощью >> в какой-нибудь промежуточный буфер и из него уже в другой файл, или куда там нужно далье..? В поток будет сбрасываться все как раз без символов-разделителей. иллюстрация:
А если как в твоем примере, то надо проверять просто на '\0' Это сообщение отредактировал(а) Rockie - 13.12.2006, 17:25 -------------------- Чтобы иметь большой гардероб - надо иметь большой гардероб. |
||||
|
|||||
codelord |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 777 Регистрация: 7.5.2005 Где: ты моя темноглаза я где?! Репутация: 1 Всего: 39 |
попробуй заменить строку
if(Original[Count] == '\n') Result[Count] = ' '; на if(Original[Count]==0x0D && Original[Count+1]==0x0A ) Result[Count] = ' '; |
|||
|
||||
ZC1989 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 468 Регистрация: 17.7.2006 Где: Нижний Новгород; Россия Репутация: нет Всего: 1 |
Rockie, я ващет написал что данные из архива получаю... потом в стд передать нельзя...
а впринципе я со всем уже разобрался сам... пасиб за внимаение Добавлено @ 17:25 codelord, может у тебя компилятор на Visual C++, а у меня на Result[Count] = ' '; (без содержимого) ругается -------------------- озарение настанет позже, когда поймём больше... (Сo. Stigmata) |
|||
|
||||
codelord |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 777 Регистрация: 7.5.2005 Где: ты моя темноглаза я где?! Репутация: 1 Всего: 39 |
Result[Count] = 0x20;
|
|||
|
||||
ZC1989 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 468 Регистрация: 17.7.2006 Где: Нижний Новгород; Россия Репутация: нет Всего: 1 |
codelord, замяли тему уже....
![]() -------------------- озарение настанет позже, когда поймём больше... (Сo. Stigmata) |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |