Здравствуйте, rg45, Вы писали:
R>Да ну? Вот спасибо, что пояснил.
Всегда пожалуйста.
R>·>Конечно. Читая, например, текстовый файл логов очень неожиданно получать нули. А вот файл может внезапно обрезаться. R>Ну да, и это далеко не полный список неприятностей, которые могут проийти с файлом при конкуретном достубе. Пока ты читаешь, нос, изменяется хвост и наборот, когда читаешь хвост, меняется нос. В результате ты получаешь ПОСЛЕДОВАТЕЛЬНОСТЬ (бля) байт, которая никогда не существовала в файле. Ты что, правда не догоняешь?
И? Ты правда не догоняешь, что для файлов "существование последовательности" — вещь неопределённая? "никогда" это когда? Никакого снапшота у файлов не бывает.
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[45]: Как в одну строку кода прочитать содержимое файла в
Здравствуйте, ·, Вы писали:
·>И? Ты правда не догоняешь, что для файлов "существование последовательности" — вещь неопределённая? "никогда" это когда? Никакого снапшота у файлов не бывает.
Ты бредишь. Ну или кривляешься. В любом случае, иди лесом, скоморох.
--
Не можешь достичь желаемого — пожелай достигнутого.
Здравствуйте, rg45, Вы писали:
R>·>Хорошо, но уже лучше. И собственно — ЧТД. От обещанного двухстрочника "бысттро, кратко и эффективно" и "делается очень легко" ничего не осталось. R>Не, ты правда дурак. Ты что реально думаешь, я с самого начала не мог написать эти сраные проверки?
Ну не смог же. Признайся, не знал же ты что tellg иногда возвращает (unsigned)-1 и умудрился затолкать это как как размер массива для аллокации.
R>·>Тебе понадобилось десяток итераций, ревью от опытных разработчиков, и таки удалось выдать код на троечку. R>Да иди ты в жопу, опытный разработчик херов. Ты напиши сначала хоть какой-нибудь код, а мы уж решим, какой ты опытный. Ты говнюк, который ничего из себя не представляет, понял? Еще и тупой, как валенок.
И тебе доброго вечера.
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[29]: Как в одну строку кода прочитать содержимое файла в
Здравствуйте, ·, Вы писали:
R>>Не, ты правда дурак. Ты что реально думаешь, я с самого начала не мог написать эти сраные проверки? ·>Ну не смог же. Признайся, не знал же ты что tellg иногда возвращает (unsigned)-1 и умудрился затолкать это как как размер массива для аллокации.
Да, не показалось, ты и правда дурак. Это ты этого не знал, и теперь как и все типы, подобные тебе, натягиваешь свою головную боль на мою голову. Меня можно было бы в этом заподозрить, если бы я делал хоть какую-то обработку ошибок, а этот момент прощелкал. Я же просто не обрабатывал ошибочных ситуации в принцие, во-первых, потому что это тривиально, и может сделать самостоятельно любой имбецил, а во-вторых потому, что вовсе не всегда это нужно делать.
--
Не можешь достичь желаемого — пожелай достигнутого.
Здравствуйте, ·, Вы писали:
·>Ну не смог же. Признайся, не знал же ты что tellg иногда возвращает (unsigned)-1 и умудрился затолкать это как как размер массива для аллокации.
Здравствуйте, rg45, Вы писали:
R>·>Ну не смог же. Признайся, не знал же ты что tellg иногда возвращает (unsigned)-1 и умудрился затолкать это как как размер массива для аллокации. R>Да, не показалось, ты и правда дурак. Я просто не обрабатывал ошибочную ситуацию, во-первых, потому что это тривиально, и может сделать самостоятельно любой имбецил,
Верно. Но проблема в том, что нужен кто-то, кто расскажет имбецилам какие ошибки могут быть в принципе, чтобы они таки смогли написать вменяемый код "самостоятельно".
R>а во-вторых потому, что не всегда ее нужно отрабатывать.
Это UB головного мозга какое-то. В комитете давно поняли, что, как минимум, это надо сразу, явно и чётко оговаривать — какие ошибки игнорируются и иметь возможность сделать контроль ошибок. В твоём "эскизе" ничего этого не было.
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[31]: Как в одну строку кода прочитать содержимое файла в
Здравствуйте, ·, Вы писали:
·>Верно. Но проблема в том, что нужен кто-то, кто расскажет имбецилам какие ошибки могут быть в принципе, чтобы они таки смогли написать вменяемый код "самостоятельно".
Этот форум на имбецилов не рассчитан, извини.
·>Это UB головного мозга какое-то. В комитете давно поняли, что, как минимум, это надо сразу, явно и чётко оговаривать — какие ошибки игнорируются и иметь возможность сделать контроль ошибок. В твоём "эскизе" ничего этого не было.
Здравствуйте, rg45, Вы писали:
R>·>Ну не смог же. Признайся, не знал же ты что tellg иногда возвращает (unsigned)-1 и умудрился затолкать это как как размер массива для аллокации. R>Посмотри сюда, тупое напыщенное существо: https://rsdn.org/forum/cpp/1188099.1
Здравствуйте, rg45, Вы писали:
R>Здравствуйте, ·, Вы писали:
R>·>Потому что это бенчмарки?
R>Правильно, молодец. А одновременно с этим это еще и пример того самого случая, когда проверки можно не делать, которым ты так интересовался
Делать проверки навык на подкорке у любого нормального программиста. Просто в ЦПП сделали так что там проверки нужны в каждой строчке кода. Т.к. везде signed/unsigned проблемы, типы имеют разный размер и т.д и т.п. Поэтому на проверки в ЦПП просто забивают болт, и так пойдет. Мол это не говнокод, а код спец. применения где проверки ненужны. Такая вот специальная олимпиада по программированию.
Re[33]: Как в одну строку кода прочитать содержимое файла в
Здравствуйте, Kluev, Вы писали:
K>Делать проверки навык на подкорке у любого нормального программиста.
Да много ты знаешь про нормальных программистов. Нормальные программисты никогда не создают тем только для того, чтоб почесать свои комплексы неолноценности.
Здравствуйте, rg45, Вы писали:
R>·>Ну не смог же. Признайся, не знал же ты что tellg иногда возвращает (unsigned)-1 и умудрился затолкать это как как размер массива для аллокации. R>Да, не показалось, ты и правда дурак. Это ты этого не знал, и теперь как и все типы, подобные тебе, натягиваешь свою головную боль на мою голову. Меня можно было бы в этом заподозрить, если бы я делал хоть какую-то обработку ошибок, а этот момент прощелкал. Здесь
в коде ты обработал ошибку открытия файла и неожиданного конца (т.е. ошибки чтения или обрезки файла), а момент с tellg прощёлкал.
R>Я же просто не обрабатывал ошибочных ситуации в принцие,
Это неправда.
R>во-первых, потому что это тривиально, и может сделать самостоятельно любой имбецил, а во-вторых потому, что вовсе не всегда это нужно делать.
Вообще говоря, мой поинт совершенно в другом. Это не наезд на твои способности, а на коммитет и дизайн языка в принципе. Проблема в том, что для написания простой функции "прочитать содержимое файла" — можно наступить на столько граблей, несмотря на огромный стаж — это, конечно, жуть.
Одно неясно, почему ты так защищаешь это и воспринимаешь как должное, я не понимаю. Неужели так нравится стрелять себе в ногу?
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[31]: Как в одну строку кода прочитать содержимое файла в
в коде ты обработал ошибку открытия файла и неожиданного конца (т.е. ошибки чтения или обрезки файла), а момент с tellg прощёлкал.
А давай, ты сначала RTFM, чтоб лужи не газировать, ладно? Этот вопрос закрывается на 100% первым if-ом.
R>>Я же просто не обрабатывал ошибочных ситуации в принцие, ·>Это неправда.
Это святая правда — к твоему большому сожалению. Ох, не любите же вы признавать свое лоховство.
·>Вообще говоря, мой поинт совершенно в другом. Это не наезд на твои способности, а на коммитет и дизайн языка в принципе. Проблема в том, что для написания простой функции "прочитать содержимое файла" — можно наступить на столько граблей, несмотря на огромный стаж — это, конечно, жуть. ·>Одно неясно, почему ты так защищаешь это и воспринимаешь как должное, я не понимаю. Неужели так нравится стрелять себе в ногу?
А кто тебе сказал, что я это воспринимаю как наезд на мои способности? Это снова какие-то твои нездоровые проекции. Бесит меня то, что приходится тратить массу своего времени объяснять одно и тоже по нескольку раз. Я тебе на все эти вопросы уже ответил. Ты же ведешь себя как невменяемый полоумный душнила. Заладил: "папа, а где море" — и по бесконечному кругу.
--
Не можешь достичь желаемого — пожелай достигнутого.
Здравствуйте, ·, Вы писали:
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]: Как в одну строку кода прочитать содержимое файла в
Здравствуйте, Kluev, Вы писали:
K>Почитал ответы, задумался. А чем, простите, занимался комитет все эти 20 лет?
После некоторого размышления пришёл к выводу, что, таки, да — комитет мог бы уже добавить реализацию memory mapped file в std, чтобы вот таких дурацких вопросов про ReadAllBytes() не возникало.
И каждый день — без права на ошибку...
Re[21]: Как в одну строку кода прочитать содержимое файла в
Здравствуйте, ·, Вы писали:
·>Не придумал как проэмулировать последовательный порт, но попробовал с пайпом (mkfifo), работает правильно.
Удивительно. Ну пусть так.
И каждый день — без права на ошибку...
Re[32]: Как в одну строку кода прочитать содержимое файла в
в коде ты обработал ошибку открытия файла и неожиданного конца (т.е. ошибки чтения или обрезки файла), а момент с tellg прощёлкал. R>А давай, ты сначала RTFM, чтоб лужи не газировать, ладно? Этот вопрос закрывается на 100% первым if-ом.
Я тебе уже говорил — проверь свой код если в качестве path будет директория.
R>Это святая правда — к твоему большому сожалению. Ох, не любите же вы признавать свое лоховство.
Щёлк!
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[36]: Как в одну строку кода прочитать содержимое файла в
Здравствуйте, B0FEE664, Вы писали:
BFE>·>И их надо _целиком_ загружать в память как массив?! Зачем? BFE>Т.е. чтобы отобразить PDF, то сразу надо начинать с byte buffers и mmf? BFE>Тоже самое и для вьювера картинок? Ведь картинка может быть очень большой...
А что такого?
BFE>·>Повторюсь, для массивных файлов есть другой api — byte buffers и mmf. Всё равно загружать их целиком бессмысленно. Даже если у тебя что-то заработает на 10гб, всё равно для 100гб, 1тб — грохнется. Если что-то больше сотни мег, то уже надо менять дизайн системы. BFE>Невозможно сказать, что бессмысленно, а что нет не имея конкретной задачи. Например с таким же успехом можно сказать, что чтение файла в память — это бессмысленная операция создания копии файла с бесполезным расходованием ресурса памяти.
Для небольшого файла — осмысленная.
BFE>Фактически функция ReadAllBytes — это от бедности, от экономии на труде программиста.
Да, верно. Вместо того, чтобы сочинять кусок кода на десяток строк, в каждой из которой можно выстрелить себе в ногу, лучше иметь одну, надёжную, отлаженную, проверенную, в стандарте. В этом и есть мой поинт.
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[33]: Как в одну строку кода прочитать содержимое файла в
Здравствуйте, ·, Вы писали:
·>Я тебе уже говорил — проверь свой код если в качестве 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, лузер.
Все? Что еще нужно сделать, чтоб ты отцепился?
·>Щёлк!
Ну, щелкай дальше, щелкунчик.
--
Не можешь достичь желаемого — пожелай достигнутого.