#eclipse #eclipse-plugin #eclipse-rcp
#eclipse #eclipse-плагин #eclipse-rcp
Вопрос:
У меня есть файл IF, показывающий абсолютный путь как
/dynamic/WebContent/testing.html
Я хочу внести некоторые изменения в вышеупомянутое testing.html. Это означает, что мне нужно загрузить файл, затем изменить его, а затем сохранить. Какова процедура выполнения вышеуказанных шагов в eclipse plug-in development.
Ответ №1:
Смотрите iFile.getContents(), setContents() и create() методы.
Используйте getContents для чтения файла в память, измените его, затем используйте setContents для его записи. Это позволит синхронизировать ваше рабочее пространство. Если вы попытаетесь преобразовать в файл и использовать стандартный ввод-вывод файлов Java, ваше рабочее пространство будет не синхронизировано (потребуется обновление) и вы будете полностью несовместимы с другими системами хранения файлов, используемыми Eclipse
Комментарии:
1. Как установить содержимое в некоторую определенную позицию файла. Разве мне не нужно динамически загружать файл.
2. Используйте getContents для чтения файла в память, измените его, затем используйте setContents для его записи. Это позволит синхронизировать ваше рабочее пространство. Если вы попытаетесь перейти к File и использовать Java RandomAccessFile, ваше рабочее пространство будет не синхронизировано (потребуется обновление) и вы будете полностью несовместимы с другими системами хранения файлов, используемыми Eclipse.
3. Если у вас есть вопросы о том, как изменить содержимое HTML с помощью новой информации, пожалуйста, опубликуйте это как отдельный вопрос, поскольку это не имеет большого отношения к Eclipse или файловому вводу-выводу.
4. @Konstantin Komissarchik: Мой 1 за точку рассинхронизации. Обычно это упускается из виду. Предлагаю вам также указать это в своем ответе.
5. После использования getContents для изменения содержимого мне нужно использовать bUfferedInput / DataInputStream для записи в определенную точку файла.
Ответ №2:
Если ваш файл локальный, попробуйте :
import java.io.RandomAccessFile;
RandomAccessFile file = new RandomAccessFile("IFile".getLocation().toFile(), "rwd");
Комментарии:
1. Хороший момент, но это всего лишь альтернатива на случай, если вам нужен произвольный доступ, а getContents (), setContents() работают слишком медленно.