Существует много вариантов разбора XML. Но от ваших собственных требований зависит, какой парсер вы сможете использовать когда. Для этого вам нужно знать основные отличия парсера. Вот некоторая основная информация, которую я предоставил.
SAX - это парсер, в котором ваш код уведомляется, когда парсер проходит по дереву XML,
и вы несете ответственность за отслеживание состояния и создание любых объектов, которые могут потребоваться для отслеживания данных при прохождении синтаксического анализатора.
DOM синтаксический анализатор считывает весь документ и создает представление в памяти, которое можно запрашивать для различных элементов. Зачастую вы даже можете создавать запросы XPath для извлечения определенных фрагментов.
И, как вы сказали, у вас большой файл, а также, если вы хотите повысить производительность, я предлагаю вам использовать StAX-парсер. Вот для этого ссылка .
Надеюсь, это поможет вам ...
Также смотрите эту ссылку .