|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
||||||
Считать текстовые файлы из папки23.02.2020, 13:04. Показов 11996. Ответов 75
Метки нет (Все метки)
только начинаю знакомиться с языком...
вывела в консоль все пути так
а ещё и содержимое файлов хочется вывести в консоль... можно ли как-то короче?.. взять в вектор и пробежавшись по нему вывести содержимое в консоль?.. (и ? есть ли возможность быстро и асинхронно их считывать - т.к. потом планируется их запуск на обработку) Добавлено через 6 минут и кириллица не норм - как выводить норм рус.яз ?
0
|
||||||
| 23.02.2020, 13:04 | |
|
Ответы с готовыми решениями:
75
Определить строки этого файла, содержащие максимальную по длине подстроку, состоящую из одинаковых символов
Вывести все текстовые файлы из папки в выпадающий список |
|
389 / 334 / 66
Регистрация: 14.10.2014
Сообщений: 1,474
|
|
| 02.03.2020, 19:37 | |
|
JeyCi, а у вас есть опыт программирования на других языках? Просто лично у меня складывается представление, что вы как-то сумбурно, код пишите. Зачем к примеру смешивать Си'шные и плюсовые способы работы с файлом. Выберите что-то одно и используйте. Производительность у них, думаю, одинаковая будет. А вот когда всего "понамешано" - это очень плохо для восприятия. И не надо говорить что вы для себя пишите. Привыкайте сразу писать нормально.
(P.S. И да - у меня есть опыт работы с чужим "говнокодом". Поверьте - такого я не пожелаю никому...)
0
|
|
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
|||||
| 02.03.2020, 20:27 [ТС] | |||||
|
что-то после FILE f*=fopen(fname, "rb") быстро в Буфер не могу загнать file возможно ли это после f.open ??.. есть лишь какой-то неудобный std::basic_filebuf...наверно, пока остановлюсь на
берётся 0,5сек... всё-таки класс string удобнее, чем просто stream... который даже в буфер пока не знаю как загнать... Добавлено через 11 минут я из VBA и SQL ... Py и с-подобный (без указателей и ссылок иногда использовала)...
0
|
|||||
|
389 / 334 / 66
Регистрация: 14.10.2014
Сообщений: 1,474
|
||||||
| 03.03.2020, 05:10 | ||||||
|
Уж точно - всякие классы с полиморфизмом производительности не добавляют, но дают просто колоссальное преимущество при построении грамотной архитектуры проекта. ![]()
0
|
||||||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
|||||
| 03.03.2020, 07:28 [ТС] | |||||
|
P.S. просто в С - новое понимание надо - указатели, память - ранее с ними не работала... при этом знаю, что работа напрямую с памятью - м.б. быстрее, когда возможностей стандартной библы не хватает... но и способы защиты памяти надо продумывать (если сам с ней работаешь, а не C++ классы о защите памяти заботятся)... просто по теме сам Потоковый IO - !! медленный (поэтому и открыла ветку - может есть ему альтернатива? но, честно говоря с учётом последнего моего поста считала ~420 файлов из папки за 0,5сек - это достойно -- просто с ост. ТЗ не так красочно -- если всё-таки буду кидать после обработки напрямую в БД - то ОК, а если выводить придётся в промежуточный .csv файл - то не нравятся мне эти потоки )... P.P.S. остальное на С/С++ быстро, и даже сопоставимо с VBA (примерно одинаково) -- просто у VBA объектная модель взаимодействия с самим Excel (ячейки, листы и т.д.) - медленная, у С++быстрее доступ к объектной модели Excel -- поэтому часто (когда в Excel нет соотв. библ-к и нормального ООП и работает медленно и жрёт много ресурсов тот же PQ и PP) - лучше писать надстройки на C/C++... имхо... и вы правы, хоть проект и есть, реализованный средствами MS, но чтобы переводить его на рельсы C/C++ - надо глубже копнуть архитектуру, а не только бизнес-логику прежнюю использовать... всё-таки полноценный ООП - тоже придётся реализовывать по совести, а не по интуиции... для этого и пробую новые инструменты и языки ![]() Добавлено через 7 минут - а по-другому, наверно, никак...
0
|
|||||
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
|
| 03.03.2020, 07:56 | |
|
JeyCi, в современном C++ нет термина STL. С 1998 года в С++ то, что находится в пространстве std называется Стандартная Библиотека С++ (The C++ Standard Library).
0
|
|
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
|||||||||||||||||
| 03.03.2020, 10:09 [ТС] | |||||||||||||||||
|
=== Функция fread
- отрабатывает ~420файлов за 0,3сек
P/S/ чтение stream'а with chunks - (C Программирование: как читать содержимое всего файла в буфер) - //************/questions/108459/c-programming-how-to-read-the-whole-file-contents-into-a-buffer-- на https_//fooobar_com -- _ заменить на ":" и "." [линк порезан - но очень хороший] Добавлено через 56 минут 2. возвращает неверное значение на foobar .../questions/108461/ftell-returning-incorrect-value Кликните здесь для просмотра всего текста
3. и главное - например, используя fgets:
альтернативы для использования: на fooobar_com...../questions/254292/correct-way-to-read-a-text-file-into-a-buffer-in-c часть кода
вобщем, надо самостоятельно разруливать неурядицы с терминальным нулём "\0" на С... на С++ в <iostream>, наверно, этой проблемы нет... да и std::string как-то её обходит, вероятно...
0
|
|||||||||||||||||
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
|
| 03.03.2020, 13:27 | |
|
1
|
|
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
|||||||||||||
| 03.03.2020, 16:41 [ТС] | |||||||||||||
|
DrOffset, благодарю, ознакомилась
p.s. вообще по вашему линку много интересного! Добавлено через 17 минут p.p.s. и очень веское замечание - Enforce type safety Кликните здесь для просмотра всего текста
p.p.p.s. как и ещё одно веское замечание есть - 3 Major use of NULL Pointer in C Programming - полагаю, чтобы с этим source'ом под спойлером правильно обращаться...
p.p.p.p.s. и очень хорошая сводка по Memory Management (MEM) Кликните здесь для просмотра всего текста
MEM00-C. Allocate and free memory in the same module, at the same level of abstraction MEM01-C. Store a new value in pointers immediately after free() MEM02-C. Immediately cast the result of a memory allocation function call into a pointer to the allocated type MEM03-C. Clear sensitive information stored in reusable resources MEM04-C. Beware of zero-length allocations MEM05-C. Avoid large stack allocations MEM06-C. Ensure that sensitive data is not written out to disk MEM07-C. Ensure that the arguments to calloc(), when multiplied, do not wrap MEM10-C. Define and use a pointer validation function MEM11-C. Do not assume infinite heap space MEM12-C. Consider using a goto chain when leaving a function on error when using and releasing resources Добавлено через 1 час 43 минуты до кучи - а то никогда не думала об этом - INT07-C. Use only explicitly signed or unsigned char type for numeric values Кликните здесь для просмотра всего текста
0
|
|||||||||||||
|
2686 / 1344 / 484
Регистрация: 08.11.2016
Сообщений: 3,732
|
||
| 03.03.2020, 16:57 | ||
|
0
|
||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
|||||||
| 03.03.2020, 17:34 [ТС] | |||||||
|
я как-то вообще char к цифрам не думала...
=== и с конверсией пока не очень - например, int в char ?
0
|
|||||||
|
389 / 334 / 66
Регистрация: 14.10.2014
Сообщений: 1,474
|
|||
| 03.03.2020, 19:07 | |||
|
Вы бы подтянули основы что ли, а потом брались бы за что нибудь серьёзное. Не в обиду - но скачайте какую - нибудь книгу по С++ страниц под 1000. В ней всё, что вы спрашиваете можно будет найти. Или вам дали задание, которое обязательно нужно сделать в кратчайшее время?
0
|
|||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
||
| 03.03.2020, 19:54 [ТС] | ||
|
я не по книге изучаю язык, а по задаче и потребностям... написала ведь вначале темы - это мой первый код... какие вопросы возникают - те и сканирую (и в книге, и в сети, и на форуме)... просто основы очень новы (память, указатели, приведение типов) - нет полных книжек, такие линки, как DrOffset оставил, в книжках не найти ...
да и норм. Окна переменных нет в ide, чтобы видеть, что в векторе или в переменной или ином контейнере, да и ошибки ide не показывает не работает... - не оч. удобно... вот и приходится предполагать и проверять... не хотите не отвечайте Recrut_rf, - а открывать книгу, или на ветке отметить тот или иной нюанс (может, даже чтобы в перспективе вернуться к нему) - на память - сама решу - спасибо всем за комменты для наведения резкости моего взгляда на нов. яз. и нов. терминологию...
0
|
||
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
||
| 03.03.2020, 20:03 | ||
|
0
|
||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
|
| 03.03.2020, 20:11 [ТС] | |
|
просто примеры учебные и примеры под конкретную задачу - под объём данных, их вид, лучший алгоритм их обработки, перспективы развития проекта в конце концов и др - это как правило разные вещи бывают... вот и изучаю по задаче
0
|
|
|
2686 / 1344 / 484
Регистрация: 08.11.2016
Сообщений: 3,732
|
||
| 03.03.2020, 23:25 | ||
|
Добавлено через 9 минут Заморочка в общем, но с инженерной точки зрения это крайне удобно: изобретаем всего одно арифметическое устройство - сумматор и... надо просуммировать? Сумматор! Умножение - несколько итераций сложения, то есть опять сумматор, вычитание? Нет проблем - инвертируем вычитаемое и снова сумматор!! А так деление - это вычитание делителя, значит инверсия делителя и опять сумматор - вот такая красота.
1
|
||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
||||
| 04.03.2020, 04:40 [ТС] | ||||
|
главное, с обработкой этих байтов и битов не напортачить... посему в такие дебри теории - тоже полезно залазить, но не во всех книжках они есть... господа, спасибо, без ваших ответов - я бы плавала в своих знаках вопросов ещё долго... а так по вашим ответам вырисовывается план кривой самообучения... благодарю
0
|
||||
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
|
| 04.03.2020, 12:16 | |
|
JeyCi, наверное тоже будет полезно: дополнительный код. Это то, что вам описали одним постом выше.
1
|
|
|
389 / 334 / 66
Регистрация: 14.10.2014
Сообщений: 1,474
|
||
| 04.03.2020, 19:05 | ||
). Мои познания, правда, не слишком большие. Но книжку скачать, как минимум одну - Справочник по STL Джосаттиса - очень рекомендую. Конечно же, если у вас феноменальная память, то, я вам завидую и эта книга вам не понадобится. Но лично мне трудно в голове постоянно держать информацию про всякие манипуляторы, фацеты, кортежи, пары и т. д.
0
|
||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
|||
| 05.03.2020, 13:46 [ТС] | |||
|
Наследование vs Композиция vs Агрегация - правда это вроде С#... но тем не менее касательно дизайна... спасибо, что дали повод покопать и эту тему!... Урок №148. Агрегация - хороший коммент:
ну, или тут хороший пример (ещё подумаю) - Работа с типизированным файлом -- правдв дату в С++ лучше загонять в структуру, насколько знаю... === но это (ООП, Классы, дизайн, Архитектура) уже, наверно, стоит отложить для др. ветки... как и правильные Указатели на объекты Класса, поля класса и методы класса... в этой ветке хоть первый раз посмотрели на указатели, благодаря hoggy на первой странице... P.S. отмечу, только, что в IDE Ultimate++ нашла и окно Locals, и Watches - и всё привычно глазу для разработки, как в VBA ... - это всё появляется при пошаговом прохождении кода из Debug->Run...
0
|
|||
|
389 / 334 / 66
Регистрация: 14.10.2014
Сообщений: 1,474
|
||
| 05.03.2020, 14:17 | ||
|
касательно наследования, композиции и агрегации - здесь нужно смотреть на то, что вам нужно. Образно говоря, наследование создаёт самую "сильную" связь между классами. Остальные два варианта подразумевают под собой по сути создание поля внутри класса (или целого класса, к полям которого можно обращаться, но извне он виден не будет). Ну так вот - если вам нужно, чтобы какие-то созданные вами классы (образно говоря) были одного общего типа (то есть есть класс родитель - от него наследуются его потомки - все они "образно" могут считаться однотипными по родству (блин - хреновый из меня объясняльщик) тогда ваш выбор - наследование.
0
|
||
| 05.03.2020, 14:17 | |
|
Не открываются папки, в которых лежат текстовые файлы (*.txt)
Текстовые файлы, как считать следующую строку посимвольно, оставаясь на нынешней
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия 14. Обновленная схема модели
anaschu 28.06.2026
ГЛОБАЛЬНАЯ ОПИСАТЕЛЬНАЯ СПЕЦИФИКАЦИЯ ЭКОСИСТЕМНОЙ МОДЕЛИ «SOIL CHEMISTRY & MYCORRHIZA 2. 0»
https:/ / ibb. co/ NnkGpfMd
Представленная интегрированная схема описывает непрерывную нелинейную. . .
|
сукцессия 13. Питон модель трехзонного мицелия, пока что в основном арбускулярного
anaschu 28.06.2026
## Разработка агентной модели микоризной сукцессии: от выявления артефактов к созданию комплексной системы
### Аннотация
Представлено исследование по разработке агентной модели микоризной. . .
|
сукцессия 12. краткий список проверок модели перед запуском.
anaschu 27.06.2026
Скрытые отказы в моделях систем динамики (SD-models) экологических систем: два случая из практики
Контекст
Разбирался прототип модели систем динамики (SD-модели) микоризной сукцессии: пять. . .
|
Сукцессия 11. Проверка орудий перед войной: разработка через тестирование
anaschu 27.06.2026
Как не дать модели соврать самой себе: проверки для симуляции микоризной сукцессии
Введение
Когда вы строите математическую модель живой системы — грибов, растений, почвы — главная опасность. . .
|
|
10 сукцессия. Питон код войны грибов и растений
anaschu 27.06.2026
import numpy as np
class PlantAgent:
def __init__(self, name, strategy, initial_biomass):
self. name = name
self. strategy = strategy # "greedy" (широколиственные) или. . .
|
сукцессия 9. Математика подлости: как растения предали грибных друзей
anaschu 27.06.2026
Статья 2. Глобальная фосфорная война: эволюционно-экономические механизмы распределения биомов Земли
Введение: Экологический рынок как игра с нулевой суммой
Традиционная экология долгое время. . .
|
сукцессия 8. Как я спорил с ИИ, которые - агенты растений и ненавистники грибов!
anaschu 27.06.2026
Статья 1. Хроники грибного восстания: как Сократов диалог разрушил академические догмы ИИ
Введение: Синдром «цифрового учебника»
Современные большие языковые модели (LLM) обладают колоссальным. . .
|
Главный вопрос моделирования сукцессии
anaschu 27.06.2026
главный вопрос.
Если эктомикориза лучше добывает недоступный фосфор. И ее масса максимальна из всех.
А широколиственный лес тоже имеет самую крутую биомассу.
То почему не возникло их симбиоза? Это. . .
|