Чтение текста и сохранение некоторой информации в Java

#java #file #arraylist #split

#java #файл #arraylist #разделение

Вопрос:

У меня есть текст, отформатированный следующим образом:

 Lorem ipsum word <tag> 1,2,3,4 </tag> dolor sit amen
  

Как я могу сохранить только «1,2,3,4» в an ArrayList ?

Комментарии:

1. Является ли это полным текстом синтаксиса, допустимым для XML, или это обычный текст, который может содержать <tag>Content</tag> ?

2. Я предполагаю, что вы хотите a List<Integer> с четырьмя отдельными записями, но ваш вопрос может быть истолкован как запрос a List<String> с одной записью, значение которой равно "1,2,3,4" .

3. Это file .kml, и я бы его проанализировал.

4. Можете ли вы объяснить алгоритм? Вам нужны значения между тегами?

5. Точно! Мне нужно значение между тегами.. Как я могу сделать, чтобы получить их быстро?

Ответ №1:

Вот с чего вы можете начать:

     String str="Lorem ipsum word <tag> 1,2,3,4 </tag> dolor sit amen";
    String tag=str.substring(str.indexOf("<tag>")   "<tag>".length());
    tag = tag.substring(0, tag.indexOf("</tag>")).trim();

    String[] ints = tag.split(",");

    List<Integer> list = new ArrayList<Integer>();
    for (String s : ints) {
        list.add(Integer.valueOf(s));
    }
    System.out.println(list);
  

Обратите внимание, что этот код не обрабатывает никаких ошибок и не проверяет, является ли введенная строка допустимой.