android - 在设备的存储中写入文本文件
问题描述
如何在公共存储中写入对其他应用程序可见的文本文件。即文件管理器。我的代码有什么问题。
String filename = "kontaktebi123.vcf";
FileOutputStream outputStream;
try {
outputStream = openFileOutput(filename, Context.MODE_PRIVATE);
PrintWriter osw = new PrintWriter(outputStream);
ArrayList<String> nomrebi = numberGenerator(view);
osw.printf("blablabla")
osw.flush();
osw.close();
} catch (Exception e) {
e.printStackTrace();
}
解决方案
您必须将文件写入公共目录,如Document
,Download
或其他。
String fileDir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).getAbsolutePath();
String fileName = "kontaktebi123.vcf";
File file = new File(fileDir + "/" + fileName);
现在写入文件,它将对其他应用程序可见。
推荐阅读
- docusignapi - 使用 DocuSign Connect 信封级 webhook 包括自定义字段
- hadoop - 我想用 Java 写一个 Hadoop MapReduce Join
- python - Python,我无法从另一个脚本元素更改列表元素
- javascript - 使用javascript从多个对象中提取数据
- mediawiki - 在 Mediawiki 上保存页面时如何隐藏“保存更改”确认窗口
- ios - 搜索栏不搜索在搜索字段中输入的单词
- php - 取消链接文件 - 路径问题 - Codeigniter
- c# - 为什么我收到无法访问的代码检测到错误
- sql - 如何在 liquibase 格式的 sql 中指定任何有效校验和?
- flutter - 如何在 web 中使用 file_picker 显示选取的图像?