Кошковед
521 / 509 / 63
Регистрация: 12.04.2010
Сообщений: 1,390
|
||||||
1 | ||||||
Как правильно открыть файл и считать из него строку?08.09.2011, 11:52. Показов 9364. Ответов 40
Метки нет (Все метки)
Прювет!
подскажите пажалста, как правильно открыть и считать строку из файла. весь функционал по обработке уже написал, а тут застрял как внебрачный ребенок буратино >_<
0
|
08.09.2011, 11:52 | |
Ответы с готовыми решениями:
40
Открыть файл и считать с него данные MFC: открыть файл и считать данные из него в буфер Открыть файл и считать из него числа с N-ой строки в одномерный массив Открыть txt файл через OpenFileDialog и считать из него текста |
Делаю внезапно и красиво
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
|
09.09.2011, 13:03 | 22 |
Возможно переполнение, если длина слова больше 255. И почему бы сразу в buff не читать.
0
|
Кошковед
521 / 509 / 63
Регистрация: 12.04.2010
Сообщений: 1,390
|
|
09.09.2011, 13:07 [ТС] | 23 |
дополнений два.
вышибает из-за переполнения буфера на середине. уже была получена стабильная рабочая схема действий )) всего-то в цикле условие изменено (while (std::getline(buf, src)) { ... } ).
0
|
Заблокирован
|
|
09.09.2011, 13:09 | 24 |
- компилятор старенький и даже так не хочет преобразовывать в read(buff.c_str()
слово не может иметь столько символов, разрыв всегда найдётся, но в общем случае да возможен такой вариант (хотя и маловероятен для файлов из реальной жизни)
0
|
Кошковед
521 / 509 / 63
Регистрация: 12.04.2010
Сообщений: 1,390
|
|
09.09.2011, 13:12 [ТС] | 27 |
это в текстах. а вот идет огромный шифрованный текст монолитом ) чо тогда) имхо, делать динамический буфер и читать всю строку.
0
|
Заблокирован
|
||||||
09.09.2011, 13:19 | 28 | |||||
- принял к сведению
- наверное в lines больше возможно записываем? Добавлено через 5 минут
0
|
09.09.2011, 13:22 | 29 |
-=ЮрА=-, а если файл такой:
Код
а аб абв фы акк ваи 235 аы 456 р Сколько времени вы потратите на то, чтобы выделять каждый раз по четыре байта и во что вы превратите кучу? Добавлено через 1 минуту -=ЮрА=-, уже обе проблемы решены.
0
|
talis
|
09.09.2011, 14:13
#33
|
Не по теме: -=ЮрА=-, удачи вам в оплате счёта за электроэнергию.
0
|
Deviaphan
|
09.09.2011, 14:15
#34
|
Не по теме: Ага, и как видно из кода, все 32 гига выводится в cout... читайте... :D
1
|
Deviaphan
|
09.09.2011, 15:06
#37
|
1
|
Кошковед
521 / 509 / 63
Регистрация: 12.04.2010
Сообщений: 1,390
|
|
09.09.2011, 15:08 [ТС] | 38 |
вспомним тему "программа Hello world!" ))
а буфер нужно выбирать под конкретную задачу. где-то строками, где-то килобайтами, где-то файл целиокм. не существует одного решения для всех задач. на то и существую программисты. их задача - найти наиболее оптимальное решение
0
|
09.09.2011, 16:50 | 39 |
Не по теме: Оптимум - наилучшее из всех возможных. Поэтому не бывает "более оптимального" или "менее оптимального". Бывает хорошее, лучше (более хорошее), и наилучшее (оно же "оптимальное"). Вы же не скажите "наиболее наилучшее" или "наименее наилучшее" :)
0
|
24 / 24 / 4
Регистрация: 13.03.2011
Сообщений: 326
|
|
10.09.2011, 14:38 | 40 |
Спасибо, только я не понял, зачем длину буфера проверять? Достаточно же было условия по ret?
0
|
10.09.2011, 14:38 | |
10.09.2011, 14:38 | |
Помогаю со студенческими работами здесь
40
Открыть файл и записать в него строку Создать файл. Записать в него строку. Считать и вывести на экран Открыть файл, считать строку из 10 символов и вывести ее. Почему не работает мой код? Файл: Как можно открыть файл txt и занести из него данные в массив? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |