Напиши программу, которая считывает с консоли путь к файлу1 и путь к файлу2. Далее все байты из файла1
записывает в файл2, но при этом меняет их местами по такому принципу: первый со вторым, третий с четвертым, и т.д.
Если последний байт в файле1 нечетный, то пишем его в файл2 как есть. Для чтения и
Перепутанные байты
- 16
Недоступна
Комментарии (134)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Pavel V.
7 августа, 00:15
Решил криво, несмотря на то что подглядывал в правильное решение. Сначала проверял является ли массив байт нечетным, и если да, сразу записывал последний элемент массива. Получилось вообще два цикла, для четного и нечетного массивов.
Правильное решение теперь кажется очень красивым.
0
slar69
6 августа, 19:05
Ну вот честно говоря такое обескураживает. Когда ты используешь метод newOutputStream, а валидатор тебе пишет: убедись, что ты используешь метод newOutputStrem. Как-то вообще неясно, что дальше-то делать? Убедился. Программа работает, задачу выполняет, проверил на файлах. Тебе пишут: убедись, что ты используешь то, что ты используешь.
0
slar69
6 августа, 19:22
Ну кто бы мог подумать, что дело в обертывании. Так-то задача на удивление не сложная. Если не считать того, что пришлось залезть в документацию, чтобы прочесть про методы, про класс Paths, которые надо было использовать по условию. Решил без буфферизации, без массивов, без цикла for.
0
bkKpoko
5 августа, 15:49
Как и все очень долго тупил над задачей, но как разобрался со считыванием файлов, придумал-таки, наконец, свое решение, но не через цикл for как в решении и обсуждениях, а через while.
Мне показалось, что заводить массив под весь файл довольно громоздко( + не хотел мучиться с инкрементами), решил сразу при чтении менять пары местами. Надеюсь знающие люди оценят, может такая практика плохая, и у этого решения много минусов.
0
Tomhetted
26 июля, 17:27
Вроде все понял, и даже в try with resources в скобках сам без подсказок входные данные правильно ввел, но мой уставший после работы моск поломался на этих изменениях инкремента в цикле for
0
wf
20 июля, 12:03
Еле-еле решил, и то с помощью чей-то-матери и "Правильного решения"(((
0
Afanasii
16 июля, 23:16
Если последний байт в файле1 нечетный, то пишем его в файл2 как есть - а где проверка на это в готовом решении? Там ведь только случай, если ласт байт в файле 1 четный
0
Anton Martov
24 июля, 14:28
если байтов - четное количество, то не будет такого исхода, что мы окажемся на последнем байте, так как индекс у него - нечетный, а наш цикл прибавляет к счётчику по 2 начиная от 0.
0
Владимир
14 июля, 19:05
Только у меня сложилось впечатление, что вообще от слова совсем, не понятно?
+2
Сергей Святоха Java Developer
4 июля, 08:41
Вот не пойму, почему валидатор не пропускает
в коде использую
валидатор пишет :
Убедись, что для записи в файл ты используешь метод newOutputStream класса Files.
Поток записи в файл (OutputStream) должен быть закрыт. 0
Никита Ильин
13 июля, 16:49
используй try, у тебя может вылететь IOException
0
Богдан
2 июля, 20:49
Да что ж такое то, сначала минут 10 не мог догнать, почему у меня читается только одна строка, пока не отдал на проверку валидатору и тот не сказал, что по первому пункту всё норм... Только тогда я догадался, что запускаю предыдущую задачу, извечная проблема 😅🤦♂️🤦♂️🤦♂️ Если знаете, какой-то лайфхак черканите в коммент.📄👇
P.S. а по поводу задания - лайк👍, наконец-то что-то самому с нуля задали написать, а не добавить одну строчку кода в уже написанный.
0
Diar Kassymov
11 июля, 15:12
я обычно открываю project (дерево), правой кнопкой запускаю run и всегда IDE запускает верную сессию. (если даже была предыдущая, вместо нее становится актуальная)
а потом уже на проверку пускаю или дебагер включаю.
0
Владыка Ксеноморф
27 июня, 14:45
Помогите, столкнулся с проблемой, выскакивает ошибка AccessDeniedException. По ощущениям все решил правильно, но после сканнера такая ситуация и дальше ничего не идет. Кто сталкивался?
0