Как разместить XML-файл в виде строки внутри Java-файла - PullRequest
0 голосов
/ 15 ноября 2011

Я использую Eclipse IDE У меня большой XML-файл. Я хочу скопировать этот XML-файл и предоставить его в виде строки.

String XMLStringSource = "XML Content Here" ;

Я получаю ошибки с двойными кавычками в файле XML, скажите, пожалуйста, как мы можем решить эту проблему?

Ответы [ 4 ]

4 голосов
/ 15 ноября 2011

Ты не должен этого делать.На самом деле это невозможно за пределами определенного размера, поскольку существует ограничение в 64 КБ для байт-кода методов (включая инициализаторы).

Правильный способ сделать это - поместить файл XML рядом с исходным кодоми используйте Class.getResourceAsStream() для чтения файла.

3 голосов
/ 15 ноября 2011

Вы можете настроить Eclipse для экранирования текста при вставке в строковый литерал.

  • Перейдите в «Окно»> «Установки»> «Java»> «Редактор»> «Ввод».
  • Установите флажок «Удалить текст при вставке в строковый литерал».
  • Нажмите «Применить».

Теперь создайте строковый литерал, например

String xml = "";

Скопируйте свой XML и вставьте его в кавычки.Eclipse автоматически избавится от него.

Это очень удобно для небольших битов xml или текста.

Если у вас большой файл, вам следует вместо этого прочитать файл в строку.

0 голосов
/ 15 ноября 2011
try
            {
                FileReader fstream = new FileReader("D:\\File.xml");
                BufferedReader out = new BufferedReader(fstream);
                String y="";
                while ((y=out.readLine()) != null)  {
                    System.out.println(y);
                }
                //out.close();
            }catch(Exception e) {
                e.printStackTrace();
            }

это приемлемо? просто прочитайте файл построчно, переменная String будет иметь двойные кавычки, и они не будут выдавать ошибку. Если чтение шаг за шагом может решить проблему.

0 голосов
/ 15 ноября 2011

Yow нужно будет избежать кавычек. Но это изменит внешний вид XML; это будет комбинация Java String / XML. Также, если XML-файл большой, как вы сказали, вам нужно будет выполнить поиск и заменить кавычки " на экранированные кавычки \" перед вставкой в ​​файл Java.

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