Как создать / написать и прочитать файл слова (с расширениями .doc и .docx) в Android? - PullRequest
0 голосов
/ 17 октября 2018

Мне нужно написать / прочитать файл слова, также, если есть какая-либо третья сторона, пожалуйста, дайте мне знать.Я использовал этот код для создания файла ->

fun createFile(fileName: String): File? {

    val APP_NAME = "Sample App"
    val LOCAL_STORAGE_BASE_PATH_FOR_MEDIA = Environment
            .getExternalStorageDirectory().toString() + "/" + APP_NAME
    val storageDirPath: String = "$LOCAL_STORAGE_BASE_PATH_FOR_MEDIA/User/Docs/"
    val TEXT_FILE_PREFIX = "Word_"
    val TEXT_FILE_SUFFIX = ".docx"   //even I used .doc extension too

    var wordFile: File? = null
    if (Environment.MEDIA_MOUNTED == Environment
                    .getExternalStorageState()) {
        val storageDir = File(storageDirPath)
        if (!storageDir.mkdirs()) {
            if (!storageDir.exists()) {
                Log.d("CameraSample", "failed to create directory")
                return null!!
            }
        }
        wordFile = if (fileName.isEmpty()) {
            File.createTempFile(TEXT_FILE_PREFIX + System.currentTimeMillis(),
                    TEXT_FILE_SUFFIX, storageDir)
        } else {
            File.createTempFile(TEXT_FILE_PREFIX
                    + fileName,
                    TEXT_FILE_SUFFIX, storageDir)
        }
    }
    return wordFile
}

и с помощью этой функции я записываю в файл

private fun writeToFile() {
    val docFile = createFile()
    try {
        val fileOutputStream = FileOutputStream(docFile)
        val outputStreamWriter = OutputStreamWriter(fileOutputStream)
        outputStreamWriter.append(etSpeechArea.text.toString().trim())

        outputStreamWriter.close()
        fileOutputStream.flush()
        fileOutputStream.close()
    } catch (e: IOException) {
        Log.e("Exception", "File write failed: " + e.toString())
    }

}

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

...