2015-05-08 2 views
0

Я пытаюсь создать приложение, которое будет читать текстовый файл (docx) и делать с ним некоторые вещи. До сих пор я делал почти все, кроме как для идентификации пуль. я могу найти isBold(), isItalic(), isStrike(), но я не могу найти isBullet()Идентификация пули в Ms Word с использованием Apache POI

может кто-нибудь пожалуйста, скажите мне, как определить пули?

приложение встроено в Java

+0

Это сообщение поможет http://stackoverflow.com/questions/5456027/how-to-extract-formatting-information-of-word-document-using-apache-poi –

+0

HTTP: // modkp -technotes.blogspot.ru/2013/04/poi-ordered-list-and-unordered-list.html –

ответ

1

Там нет isBullet() метода, потому что список стайлинг в Слове довольно много сложнее. У вас есть различные уровни отступа, различные стили пуль, пронумерованные списки и маркированные списки и т.д.

Вероятно, самый простой способ для вас, чтобы позвонить для случая использования является XWPFParagraph.html.getNumFmt():

Возвраты формат нумерации для этого пункта, например, bullet или lowerLetter. Возвращает null, если этот абзац не имеет числового стиля.

вызовов, что, и если вы получите пустой это не список, и если да, то вы будете знать, если это маркированный, номер, письмо и т.д.

+0

Я люблю тебя за это !!!! Он работал ха-ха! Это сработало! * Я искал ответ везде !!! ты спасатель! –

0

Вы можете использовать ниже код для получения списка всех пуль из словаря. Я использовал apache poi's XWPF api.

public class ListTest { 

    public static void main(String[] args) { 
    String filename = "file_path"; 
     List<String> paraList = new ArrayList<String>(); 
     try { 
      // is = new FileInputStream(fileName); 
      XWPFDocument doc = 
       new XWPFDocument(OPCPackage.open(filename)); 
      List<XWPFParagraph> paragraphList = doc.getParagraphs(); 
      for(XWPFParagraph para :paragraphList) { 
       if((para.getStyle()!=null) && (para.getNumFmt() !=null)) { 
        paraList.add(para.getText()); 
      } 
      for(String bullet :paraList) { 
       System.out.println(bullet); 
      } 
     } 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 

} 
Смежные вопросы