Re[44]: Как в одну строку кода прочитать содержимое файла в
От: · Великобритания  
Дата: 08.01.24 23:03
Оценка:
Здравствуйте, rg45, Вы писали:

R>Да ну? Вот спасибо, что пояснил.

Всегда пожалуйста.

R>·>Конечно. Читая, например, текстовый файл логов очень неожиданно получать нули. А вот файл может внезапно обрезаться.

R>Ну да, и это далеко не полный список неприятностей, которые могут проийти с файлом при конкуретном достубе. Пока ты читаешь, нос, изменяется хвост и наборот, когда читаешь хвост, меняется нос. В результате ты получаешь ПОСЛЕДОВАТЕЛЬНОСТЬ (бля) байт, которая никогда не существовала в файле. Ты что, правда не догоняешь?
И? Ты правда не догоняешь, что для файлов "существование последовательности" — вещь неопределённая? "никогда" это когда? Никакого снапшота у файлов не бывает.
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[45]: Как в одну строку кода прочитать содержимое файла в
От: rg45 СССР  
Дата: 08.01.24 23:07
Оценка:
Здравствуйте, ·, Вы писали:

·>И? Ты правда не догоняешь, что для файлов "существование последовательности" — вещь неопределённая? "никогда" это когда? Никакого снапшота у файлов не бывает.


Ты бредишь. Ну или кривляешься. В любом случае, иди лесом, скоморох.
--
Не можешь достичь желаемого — пожелай достигнутого.
Отредактировано 08.01.2024 23:18 rg45 . Предыдущая версия . Еще …
Отредактировано 08.01.2024 23:17 rg45 . Предыдущая версия .
Re[28]: Как в одну строку кода прочитать содержимое файла в
От: · Великобритания  
Дата: 08.01.24 23:32
Оценка:
Здравствуйте, rg45, Вы писали:

R>·>Хорошо, но уже лучше. И собственно — ЧТД. От обещанного двухстрочника "бысттро, кратко и эффективно" и "делается очень легко" ничего не осталось.

R>Не, ты правда дурак. Ты что реально думаешь, я с самого начала не мог написать эти сраные проверки?
Ну не смог же. Признайся, не знал же ты что tellg иногда возвращает (unsigned)-1 и умудрился затолкать это как как размер массива для аллокации.

R>·>Тебе понадобилось десяток итераций, ревью от опытных разработчиков, и таки удалось выдать код на троечку.

R>Да иди ты в жопу, опытный разработчик херов. Ты напиши сначала хоть какой-нибудь код, а мы уж решим, какой ты опытный. Ты говнюк, который ничего из себя не представляет, понял? Еще и тупой, как валенок.
И тебе доброго вечера.
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[29]: Как в одну строку кода прочитать содержимое файла в
От: rg45 СССР  
Дата: 08.01.24 23:35
Оценка:
Здравствуйте, ·, Вы писали:

R>>Не, ты правда дурак. Ты что реально думаешь, я с самого начала не мог написать эти сраные проверки?

·>Ну не смог же. Признайся, не знал же ты что tellg иногда возвращает (unsigned)-1 и умудрился затолкать это как как размер массива для аллокации.

Да, не показалось, ты и правда дурак. Это ты этого не знал, и теперь как и все типы, подобные тебе, натягиваешь свою головную боль на мою голову. Меня можно было бы в этом заподозрить, если бы я делал хоть какую-то обработку ошибок, а этот момент прощелкал. Я же просто не обрабатывал ошибочных ситуации в принцие, во-первых, потому что это тривиально, и может сделать самостоятельно любой имбецил, а во-вторых потому, что вовсе не всегда это нужно делать.
--
Не можешь достичь желаемого — пожелай достигнутого.
Отредактировано 09.01.2024 0:13 rg45 . Предыдущая версия . Еще …
Отредактировано 08.01.2024 23:52 rg45 . Предыдущая версия .
Отредактировано 08.01.2024 23:38 rg45 . Предыдущая версия .
Re[29]: Как в одну строку кода прочитать содержимое файла в
От: rg45 СССР  
Дата: 08.01.24 23:45
Оценка:
Здравствуйте, ·, Вы писали:

·>Ну не смог же. Признайся, не знал же ты что tellg иногда возвращает (unsigned)-1 и умудрился затолкать это как как размер массива для аллокации.


Посмотри сюда, тупое напыщенное существо: https://rsdn.org/forum/cpp/1188099.1
Автор: eao197
Дата: 24.05.05
. Ты видишь здесь хоть какие-нибудь проверки. А как думаешь, почему? Домашнее задание тебе "на подумать".
--
Не можешь достичь желаемого — пожелай достигнутого.
Отредактировано 08.01.2024 23:49 rg45 . Предыдущая версия . Еще …
Отредактировано 08.01.2024 23:48 rg45 . Предыдущая версия .
Re[30]: Как в одну строку кода прочитать содержимое файла в
От: · Великобритания  
Дата: 08.01.24 23:52
Оценка:
Здравствуйте, rg45, Вы писали:

R>·>Ну не смог же. Признайся, не знал же ты что tellg иногда возвращает (unsigned)-1 и умудрился затолкать это как как размер массива для аллокации.

R>Да, не показалось, ты и правда дурак. Я просто не обрабатывал ошибочную ситуацию, во-первых, потому что это тривиально, и может сделать самостоятельно любой имбецил,
Верно. Но проблема в том, что нужен кто-то, кто расскажет имбецилам какие ошибки могут быть в принципе, чтобы они таки смогли написать вменяемый код "самостоятельно".

R>а во-вторых потому, что не всегда ее нужно отрабатывать.

Это UB головного мозга какое-то. В комитете давно поняли, что, как минимум, это надо сразу, явно и чётко оговаривать — какие ошибки игнорируются и иметь возможность сделать контроль ошибок. В твоём "эскизе" ничего этого не было.
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[31]: Как в одну строку кода прочитать содержимое файла в
От: rg45 СССР  
Дата: 08.01.24 23:56
Оценка:
Здравствуйте, ·, Вы писали:

·>Верно. Но проблема в том, что нужен кто-то, кто расскажет имбецилам какие ошибки могут быть в принципе, чтобы они таки смогли написать вменяемый код "самостоятельно".


Этот форум на имбецилов не рассчитан, извини.

·>Это UB головного мозга какое-то. В комитете давно поняли, что, как минимум, это надо сразу, явно и чётко оговаривать — какие ошибки игнорируются и иметь возможность сделать контроль ошибок. В твоём "эскизе" ничего этого не было.


И не только в моем эскизе этого не было, это общепринятая практика. Вот тебе еще 7 штук эскизов: https://rsdn.org/forum/cpp/1188099.1
Автор: eao197
Дата: 24.05.05
, здесь тоже "ничего этого нет". А между тем, тебе до автора этих эскизов срать и срать — как по опыту, так и по развитию.
--
Не можешь достичь желаемого — пожелай достигнутого.
Отредактировано 08.01.2024 23:58 rg45 . Предыдущая версия . Еще …
Отредактировано 08.01.2024 23:57 rg45 . Предыдущая версия .
Re[30]: Как в одну строку кода прочитать содержимое файла в
От: · Великобритания  
Дата: 09.01.24 00:00
Оценка:
Здравствуйте, rg45, Вы писали:

R>·>Ну не смог же. Признайся, не знал же ты что tellg иногда возвращает (unsigned)-1 и умудрился затолкать это как как размер массива для аллокации.

R>Посмотри сюда, тупое напыщенное существо: https://rsdn.org/forum/cpp/1188099.1
Автор: eao197
Дата: 24.05.05
. Ты видишь здесь хоть какие-нибудь проверки. А как думаешь, почему? Домашнее задание тебе "на подумать".

Потому что это бенчмарки?
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[31]: Как в одну строку кода прочитать содержимое файла в
От: rg45 СССР  
Дата: 09.01.24 00:03
Оценка:
Здравствуйте, ·, Вы писали:

·>Потому что это бенчмарки?


Правильно, молодец. А одновременно с этим это еще и пример того самого случая, когда проверки можно не делать, которым ты так интересовался
Автор: ·
Дата: 08.01 20:20
.
--
Не можешь достичь желаемого — пожелай достигнутого.
Отредактировано 09.01.2024 0:51 rg45 . Предыдущая версия . Еще …
Отредактировано 09.01.2024 0:06 rg45 . Предыдущая версия .
Re[32]: Как в одну строку кода прочитать содержимое файла в
От: Kluev  
Дата: 09.01.24 05:24
Оценка:
Здравствуйте, rg45, Вы писали:

R>Здравствуйте, ·, Вы писали:


R>·>Потому что это бенчмарки?


R>Правильно, молодец. А одновременно с этим это еще и пример того самого случая, когда проверки можно не делать, которым ты так интересовался
Автор: ·
Дата: 08.01 20:20
.


Делать проверки навык на подкорке у любого нормального программиста. Просто в ЦПП сделали так что там проверки нужны в каждой строчке кода. Т.к. везде signed/unsigned проблемы, типы имеют разный размер и т.д и т.п. Поэтому на проверки в ЦПП просто забивают болт, и так пойдет. Мол это не говнокод, а код спец. применения где проверки ненужны. Такая вот специальная олимпиада по программированию.
Re[33]: Как в одну строку кода прочитать содержимое файла в
От: rg45 СССР  
Дата: 09.01.24 07:40
Оценка:
Здравствуйте, Kluev, Вы писали:

K>Делать проверки навык на подкорке у любого нормального программиста.


Да много ты знаешь про нормальных программистов. Нормальные программисты никогда не создают тем только для того, чтоб почесать свои комплексы неолноценности.

Короче, тебе тоже сюда: http://rsdn.org/forum/cpp/8664458.1
Автор: rg45
Дата: 09.01 02:56
--
Не можешь достичь желаемого — пожелай достигнутого.
Отредактировано 09.01.2024 9:28 rg45 . Предыдущая версия . Еще …
Отредактировано 09.01.2024 7:44 rg45 . Предыдущая версия .
Отредактировано 09.01.2024 7:43 rg45 . Предыдущая версия .
Отредактировано 09.01.2024 7:41 rg45 . Предыдущая версия .
Re[30]: Как в одну строку кода прочитать содержимое файла в
От: · Великобритания  
Дата: 09.01.24 12:55
Оценка:
Здравствуйте, rg45, Вы писали:

R>·>Ну не смог же. Признайся, не знал же ты что tellg иногда возвращает (unsigned)-1 и умудрился затолкать это как как размер массива для аллокации.

R>Да, не показалось, ты и правда дурак. Это ты этого не знал, и теперь как и все типы, подобные тебе, натягиваешь свою головную боль на мою голову. Меня можно было бы в этом заподозрить, если бы я делал хоть какую-то обработку ошибок, а этот момент прощелкал.
Здесь
Автор: rg45
Дата: 08.01 22:07
в коде ты обработал ошибку открытия файла и неожиданного конца (т.е. ошибки чтения или обрезки файла), а момент с tellg прощёлкал.

R>Я же просто не обрабатывал ошибочных ситуации в принцие,

Это неправда.

R>во-первых, потому что это тривиально, и может сделать самостоятельно любой имбецил, а во-вторых потому, что вовсе не всегда это нужно делать.

Вообще говоря, мой поинт совершенно в другом. Это не наезд на твои способности, а на коммитет и дизайн языка в принципе. Проблема в том, что для написания простой функции "прочитать содержимое файла" — можно наступить на столько граблей, несмотря на огромный стаж — это, конечно, жуть.
Одно неясно, почему ты так защищаешь это и воспринимаешь как должное, я не понимаю. Неужели так нравится стрелять себе в ногу?
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[31]: Как в одну строку кода прочитать содержимое файла в
От: rg45 СССР  
Дата: 09.01.24 13:09
Оценка:
Здравствуйте, ·, Вы писали:

·>Здесь
Автор: rg45
Дата: 08.01 22:07
в коде ты обработал ошибку открытия файла и неожиданного конца (т.е. ошибки чтения или обрезки файла), а момент с tellg прощёлкал.


А давай, ты сначала RTFM, чтоб лужи не газировать, ладно? Этот вопрос закрывается на 100% первым if-ом.

R>>Я же просто не обрабатывал ошибочных ситуации в принцие,

·>Это неправда.

Это святая правда — к твоему большому сожалению. Ох, не любите же вы признавать свое лоховство.

·>Вообще говоря, мой поинт совершенно в другом. Это не наезд на твои способности, а на коммитет и дизайн языка в принципе. Проблема в том, что для написания простой функции "прочитать содержимое файла" — можно наступить на столько граблей, несмотря на огромный стаж — это, конечно, жуть.

·>Одно неясно, почему ты так защищаешь это и воспринимаешь как должное, я не понимаю. Неужели так нравится стрелять себе в ногу?

А кто тебе сказал, что я это воспринимаю как наезд на мои способности? Это снова какие-то твои нездоровые проекции. Бесит меня то, что приходится тратить массу своего времени объяснять одно и тоже по нескольку раз. Я тебе на все эти вопросы уже ответил. Ты же ведешь себя как невменяемый полоумный душнила. Заладил: "папа, а где море" — и по бесконечному кругу.
--
Не можешь достичь желаемого — пожелай достигнутого.
Отредактировано 09.01.2024 13:17 rg45 . Предыдущая версия .
Re[35]: Как в одну строку кода прочитать содержимое файла в
От: B0FEE664  
Дата: 09.01.24 13:12
Оценка:
Здравствуйте, ·, Вы писали:

BFE>>PDF файлы бывают очень большие... (10,000+ pages)

·>И их надо _целиком_ загружать в память как массив?! Зачем?
Т.е. чтобы отобразить PDF, то сразу надо начинать с byte buffers и mmf?
Тоже самое и для вьювера картинок? Ведь картинка может быть очень большой...

BFE>>Кстати, а это ограничение в 2147483647 только для 32-битной JVM и для 64-битной JVM его нет?

·>Для любой.
В этом нет смысла.

·>Повторюсь, для массивных файлов есть другой api — byte buffers и mmf. Всё равно загружать их целиком бессмысленно. Даже если у тебя что-то заработает на 10гб, всё равно для 100гб, 1тб — грохнется. Если что-то больше сотни мег, то уже надо менять дизайн системы.

Невозможно сказать, что бессмысленно, а что нет не имея конкретной задачи. Например с таким же успехом можно сказать, что чтение файла в память — это бессмысленная операция создания копии файла с бесполезным расходованием ресурса памяти.

Фактически функция ReadAllBytes — это от бедности, от экономии на труде программиста.
И каждый день — без права на ошибку...
Re[35]: Как в одну строку кода прочитать содержимое файла в
От: rg45 СССР  
Дата: 09.01.24 13:14
Оценка:
Здравствуйте, ·, Вы писали:

·>И их надо _целиком_ загружать в память как массив?! Зачем?


Затем, что в этой теме обсуждается си-плюс-плюсный аналог си-шарпного File.ReadAllBytes.
--
Не можешь достичь желаемого — пожелай достигнутого.
Отредактировано 09.01.2024 13:23 rg45 . Предыдущая версия .
Re[2]: Как в одну строку кода прочитать содержимое файла в массив?
От: B0FEE664  
Дата: 09.01.24 13:17
Оценка:
Здравствуйте, Kluev, Вы писали:

K>Почитал ответы, задумался. А чем, простите, занимался комитет все эти 20 лет?


После некоторого размышления пришёл к выводу, что, таки, да — комитет мог бы уже добавить реализацию memory mapped file в std, чтобы вот таких дурацких вопросов про ReadAllBytes() не возникало.
И каждый день — без права на ошибку...
Re[21]: Как в одну строку кода прочитать содержимое файла в
От: B0FEE664  
Дата: 09.01.24 13:29
Оценка:
Здравствуйте, ·, Вы писали:

·>Не придумал как проэмулировать последовательный порт, но попробовал с пайпом (mkfifo), работает правильно.

Удивительно. Ну пусть так.
И каждый день — без права на ошибку...
Re[32]: Как в одну строку кода прочитать содержимое файла в
От: · Великобритания  
Дата: 09.01.24 13:43
Оценка:
Здравствуйте, rg45, Вы писали:

R>·>Здесь
Автор: rg45
Дата: 08.01 22:07
в коде ты обработал ошибку открытия файла и неожиданного конца (т.е. ошибки чтения или обрезки файла), а момент с tellg прощёлкал.

R>А давай, ты сначала RTFM, чтоб лужи не газировать, ладно? Этот вопрос закрывается на 100% первым if-ом.
Я тебе уже говорил — проверь свой код если в качестве path будет директория.

R>Это святая правда — к твоему большому сожалению. Ох, не любите же вы признавать свое лоховство.

Щёлк!
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[36]: Как в одну строку кода прочитать содержимое файла в
От: · Великобритания  
Дата: 09.01.24 13:47
Оценка:
Здравствуйте, B0FEE664, Вы писали:

BFE>·>И их надо _целиком_ загружать в память как массив?! Зачем?

BFE>Т.е. чтобы отобразить PDF, то сразу надо начинать с byte buffers и mmf?
BFE>Тоже самое и для вьювера картинок? Ведь картинка может быть очень большой...
А что такого?

BFE>·>Повторюсь, для массивных файлов есть другой api — byte buffers и mmf. Всё равно загружать их целиком бессмысленно. Даже если у тебя что-то заработает на 10гб, всё равно для 100гб, 1тб — грохнется. Если что-то больше сотни мег, то уже надо менять дизайн системы.

BFE>Невозможно сказать, что бессмысленно, а что нет не имея конкретной задачи. Например с таким же успехом можно сказать, что чтение файла в память — это бессмысленная операция создания копии файла с бесполезным расходованием ресурса памяти.
Для небольшого файла — осмысленная.

BFE>Фактически функция ReadAllBytes — это от бедности, от экономии на труде программиста.

Да, верно. Вместо того, чтобы сочинять кусок кода на десяток строк, в каждой из которой можно выстрелить себе в ногу, лучше иметь одну, надёжную, отлаженную, проверенную, в стандарте. В этом и есть мой поинт.
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[33]: Как в одну строку кода прочитать содержимое файла в
От: rg45 СССР  
Дата: 09.01.24 13:51
Оценка:
Здравствуйте, ·, Вы писали:

·>Я тебе уже говорил — проверь свой код если в качестве path будет директория.


[Exception]: File not found: E:\Video

E:\Development\VS2022\x64\Release\ConsoleApplication1.exe (process 16748) exited with code 0.
Press any key to close this window . . .


RTFM, лузер.

Все? Что еще нужно сделать, чтоб ты отцепился?

·>Щёлк!


Ну, щелкай дальше, щелкунчик.
--
Не можешь достичь желаемого — пожелай достигнутого.
Отредактировано 09.01.2024 13:55 rg45 . Предыдущая версия .
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.