在Android中使用Kotlin创建PDF文件



我正在尝试构建一个生成简单PDF文档的Android应用程序。

我写了这个函数:

@RequiresApi(Build.VERSION_CODES.KITKAT)
fun createDocument(text: String) {
val pdf = PdfDocument()
val page = pdf.startPage(PdfDocument.PageInfo.Builder(
100, 100, 1).create())
val canvas = page.canvas
val paint = Paint()
try {
canvas.drawText(text,20F,30F,paint)
pdf.finishPage(page)
val fileName = "doc${System.currentTimeMillis()}.pdf"
val file = File(getExternalFilesDir(Environment.DIRECTORY_DOCUMENTS), fileName)
pdf.writeTo(file.outputStream())
pdf.close()
Toast.makeText(applicationContext, "$fileName has been created", Toast.LENGTH_SHORT).show()
}
catch (e: Exception) {
Toast.makeText(applicationContext, "Error: ${e.toString()}", Toast.LENGTH_SHORT).show()
}
}

当我运行这段代码时,我看到toast消息,但没有创建文件,我做错了什么?

正如CommonsWare和blackapps所指出的,该文档实际上是创建并保存的,但与我所看到的位置不同。

文件位置/Android/data//files/Documents/

最新更新