как скопировать тест с документа сохраняя форматирование? андроид

у меня есть текст в ворд:

enter image description here

Внутри заголовок и 2 абзаца. Я хочу сохранить их в strings.xml и отобразить в TextView. Но получается каша

:enter image description here

Как сохранить форматирование?


Ответы (1 шт):

Автор решения: Andrew

Я бы не советовал сохранение текста в ресурсы. Если вам нужно отобразить содержимое файла, то открывайте его и показывайте в textView. Для открытия файла можно использовать библиотеку ApachePOI. Данная библиотека в состоянии вытащить данные из файла и отобразить в виджете без использования ресурсов. Вот есть обзор библиотеки. Например есть класс XWPFWordExtractor который можно использовать таким образом:

try(FileInputStream fis = new FileInputStream("Javatpoint.docx")) {  
    XWPFDocument file   = new XWPFDocument(OPCPackage.open(fis));  
    XWPFWordExtractor ext = new XWPFWordExtractor(file);  
    System.out.println(ext.getText());  
}catch(Exception e) {  
    System.out.println(e);  
}

Еще один вариант - использовать intent для открытия файла, но это будет происходить за пределами приложения:

private void openFile(File url) {

    try {

        Uri uri = Uri.fromFile(url);

        Intent intent = new Intent(Intent.ACTION_VIEW);
        intent.setDataAndType(uri, "application/msword");
        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        context.startActivity(intent);
    } catch (ActivityNotFoundException e) {
        Toast.makeText(context, "No application found which can open the file", Toast.LENGTH_SHORT).show();
    }
}

Вот есть страничка библиотеки ApachePOI.

→ Ссылка