Java - Чтение / запись файлов - PullRequest
       2

Java - Чтение / запись файлов

0 голосов
/ 13 декабря 2010

У меня есть несколько файлов Java в моей рабочей области. Теперь я хочу написать программу Java, которая будет читать текстовый файл, поступающий из другого источника, по одному, построчно и вставлять эти строки в соответствующие файлы Java в рабочей области.

В текстовом файле будет указано, какой файл в какой класс ".java" вставить.

Например, у меня есть AddressType.Java в моей рабочей области с геттерами, сеттерами

Я получил текстовый файл, а именно AddressType.txt, в котором есть некоторые дополнительные методы, комментарии, переменные экземпляра и т. Д., Которые на самом деле должны находиться в теле файла AddressType.Java.

Для этого у меня есть логика в уме и своего рода работа. Я умею читать / писать в файлы. Здесь моя проблема. Мой подход состоит в том, чтобы заменить конечную скобку} в AddressType.Java пробелом, а затем перетащить содержимое AddressType.txt в AddressType.java и затем снова закрыть}.

Может ли кто-нибудь помочь мне найти EOF} в файле .java с помощью java-программы.

Я не могу сделать это вручную, поскольку у меня есть сотни java-файлов и текстовых файлов для перемещения контента.

Пожалуйста, помогите. Я надеюсь, что кто-то понимает этот вопрос.

Ничто не является временем выполнения. Все само время компиляции. Я имею в виду, что мне нужно объединить содержимое TXT-файла в файл Java, а затем скомпилировать и отправить файлы Java.

Ответы [ 3 ]

2 голосов
/ 13 декабря 2010

Вы можете прочитать весь текстовый файл Java в память и удалить последний} таким образом.Классы не могут быть очень большими.т.е. меньше, чем несколько МБ.И вы можете сделать это с IOUtils.toString () в одну строку.

String textWithoutLast = IOUtils.toString(
      new FileInputStream(javaFilename)
      ).replaceAll("}\\s*$","");

Это удаляет последний} с любым количеством пробелов, табуляции или новых строк после него.

0 голосов
/ 13 декабря 2010

Кто-то, знакомый с написанием плагинов Eclipse, может расширить существующий плагин форматирования кода, чтобы сделать это.

0 голосов
/ 13 декабря 2010

Вы должны сосчитать начальные { с и закрытые }, если у вас есть тот же номер, который вы нашли закрывающим ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...