我正尝试在设备上保存一个PDF,但出现此错误
FileSystemException:无法打开文件,path = 'Directory:'/storage/emulated/0/Android/data/esofos.health/files '/test.pdf
这是生成文档的函数
_generatepdf() async {
//Get external storage directory
final directory = await getExternalStorageDirectory();
//Get directory path
final path = directory;
// Create a new PDF document.
final PdfDocument document = PdfDocument();
// Add a PDF page and draw text.
document.pages.add().graphics.drawString(
'Hello World!', PdfStandardFont(PdfFontFamily.helvetica, 12),
brush: PdfSolidBrush(PdfColor(0, 0, 0)),
bounds: const Rect.fromLTWH(0, 0, 150, 20));
// Save the document.
print(path);
File('$path/test.pdf').writeAsBytes(document.save());
// Dispose the document.
document.dispose();
};
字符串
3条答案
按热度按时间2vuwiymt1#
使用
Directory
path属性而不是类的字符串表示。类似于这样:字符串
to94eoyn2#
如果不是一个需要访问设备外部存储的应用程序(例如防病毒应用程序),并且您想在Flutter中下载文件,您可以在安装过程中使用path_provider包通过Android使用您的应用程序特定的目录提供程序。
字符串
yftpprvb3#
当检查提供的代码片段时,目录路径的类型转换不正确。我们请求您将下面的代码更改为保存并正确打开pdf文件。
字符串
请参阅下面的文档链接,
UG:https://help.syncfusion.com/flutter/pdf/getting-started#save-and-open-a-pdf-document-in-mobile