当前位置: 首页 > 知识库问答 >
问题:

我正在使用以下代码创建pdf并将其存储在设备上,但不成功[重复]

谭宜
2023-03-14
public void savePDF(View view) {
        //create document object
        Document doc = new Document();
        //output file path
        String outpath= Environment.getExternalStorageDirectory()+"/mypdf.pdf";
        try {
            //create pdf writer instance
            PdfWriter.getInstance(doc, new FileOutputStream(outpath));
            //open the document for writing
            doc.open();
            //add paragraph to the document
            doc.add(new Paragraph("bob"));
            //close the document
            doc.close();

            Toast.makeText(this, "Worked", Toast.LENGTH_SHORT).show();

        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (DocumentException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

我正在使用上面的代码创建一个PDF文件,并将其存储在设备的外部存储器上。下面是我的清单的一个片段:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="com.example.mobileappdevelopment">
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.INTERNET" />
    implementation 'com.itextpdf:itextg:5.5.10'

共有1个答案

太叔小云
2023-03-14

WRITE_EXTERNAL_STORAGE从API级别19开始,读/写context.getexternalfilesdir(String)和context.getexternalcachedir()返回的特定于应用程序的目录中的文件不需要此权限。

https://developer.android.com/reference/android/manifest.permission.html#write_external_storage

 类似资料:
  • 我正在firebase中开发一个应用程序。创建订单时,我希望生成其发票。我已经实现了这个功能,但是URL有问题,因为pdf是创建的,但是正如你在图片中看到的,打开它的URL是错误的。 这是我在云函数index.js中的代码: 如你所见,pdf创建正确,但网址是错误的,我不能打开它。 如果有人帮助我,我将非常感激。

  • 当前配置: 我目前的项目在依赖项中使用了很多库。但是如果库很少的项目不会被标记这样的错误。 Android Studio 1.5 RC1 compileSdkVersion'Google Inc.:Google API:23 buildToolsVersion'23.0.2' 类路径'com.android.tools.build: gradle: 1.3.1' 我已经做了但没有解决问题的活动:

  • 我需要在android外部可移动存储设备上创建一个文件夹kalid。但是我的文件夹是在手机存储上创建的。我已经从教程中实现了这两个代码。 上面的代码在内部内存中创建kalids文件夹 我的清单如下所示 如何在外部存储设备中创建文件夹?

  • 我想用BLE连接一个OBD2加密狗,它根据汽车状态打开/关闭。按照目前的计划,Android设备本身将一直运行。 我有两种重新连接的选择: a) 将connectGatt“autoconnect”参数设置为“true” b)定期扫描设备,直到“我的”MAC出现,然后连接到此设备 我的问题: > 是否有更好的方法(例如,当出现新的BLE设备时,系统广播等)来减少扫描并立即打开设备,或者至少开始扫描?

  • 的控制台输出是正确的,我相信使用的是正确的。 上载的控制台输出如下: 然而,当我查看firebase存储时,新文件夹和图像不在那里。火药库没有变化。为什么它实际上不储存在仓库里?

  • 问题内容: 使用该插件,我将创建一个文件并基于单击按钮生成下载。我想将文件保存到服务器上,而不是启动下载。因此,当单击按钮时,我希望将文件保存在: 我知道我需要使用将文件发布到服务器。但是,查看文档并没有看到对任何数据类型的支持。 我的代码: 基于此xml文档保存示例,我尝试了以下操作: 这将下载文件而不是保存文件。如何保存文件? 问题答案: 我设法使用来解决此问题,方法如下: upload.ph