Используем RandomAccessFile

  • 12
  • Недоступна
В метод main приходят три параметра: 1) fileName - путь к файлу; 2) number - число, позиция в файле; 3) text - текст. Считать текст с файла начиная с позиции number, длинной такой же как и длинна переданного текста в третьем параметре. Если считанный текст такой же как и text, то записать в конец ф
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (61)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Vitaly Khan37 уровень
30 января, 05:05
все решение - ровно 6 строк кода) мне не очень понятно, зачем нас вынудили использовать такую перегруженную форму метода
raf.read(bytes, 0, args[2].length());
вместо
raf.read(bytes);
Леонид39 уровень, Москва
25 апреля, 18:19
Да, зачем использовать в этой предыдущей зачах чистые read и write, если в этой же лекции рассказывают, что есть методы для каждого примитива. Наверно что-то нужно было понять) Я опять не понял. Или писать байты удобнее для компа, а остальные методы работаю медленно (сравнительно) и более ресурсоемкие ?
Макс36 уровень
26 января, 18:13
написал код быстро потом 20 минут подгонял под валидатор)))) ну все как обычно )
Дмитрий29 уровень
22 января, 09:16
Перед сравнением используйте конструктор
new String(byte[],"<Ваша кодировка, у меня UTF-8>")
И будет вам счастье)
Maxim Dudyshev28 уровень, Москва
30 мая, 20:27
У меня и без кодировки приняло, может доработали)
Олександр М27 уровень, Львов
13 января, 22:29
Валидатор пропускает только RandomAccessFile исключительно с конструктором String. С конструктором File - не хочет пропускать... Думаю тут таки бага.
George Matua30 уровень
20 января, 08:45
Однозначно - таки минус 2 попытки...
S3R3N1TY35 уровень, Санкт-Петербург
4 апреля, 20:38
А зачем тут File, если в аргументах строка передается. Смысл собирать еще File ?
Сергей Мурин41 уровень
18 октября 2018, 01:18
Добавить в конец файла строку - это не значит, что нужно добавлять её с новой строки файла. Её нужно просто прилепить к концу текста. -2 попытки :(
Mark35 уровень, Санкт-Петербург
6 октября 2018, 08:22
try with resources валидатор не принимает, raf.close() - принимает
Артём31 уровень, Минск
5 декабря 2018, 22:13
приняло try-with-resources
George Matua30 уровень
20 января, 08:45
и без raf.close() и без try-with-resources принимает
Vitaly Khan37 уровень
30 января, 04:42
плохо, что принимает. косяк валидатора... мы же с файловой системой работаем. обязательно надо освобождать ресурсы.
QWE333TY32 уровень, Минск
3 октября 2018, 20:13
Не забывайте про то, что мы должны установить длину массива с байтами для строки, а не саму длину строки :)))
Сергей36 уровень, Москва
17 августа 2018, 16:08
Валя принимает такую строку для сравнения new String(bytes, "UTF-8");
12 декабря 2018, 04:44
в лоб new String(buffer) тоже принимает
Андрей37 уровень, Москва
14 августа 2018, 17:28
заняло около 2х минут
Ярослав35 уровень
12 июля 2018, 12:04
Сколько геморроя из-за требования использовать чтение из файла в массив байтов ! Полчаса потратил, пока перебирал методы преобразования массива в строку.