[英]save file to sd card
将文件保存到 SD 卡时,我如何听到按下的按钮的名称 我有许多不同的按钮和一种方法
File file = new File(SDCardRoot,"/Download/Alnabi.pdf");
如果有人单击第一个按钮,我希望将 alnabi.pdf 保存到 SD 卡,但是如果我单击第二个按钮怎么办? 我想要一种根据单击的按钮将文件名“alnabi.pdf”更改为另一个文件名的方法,谢谢。
您必须为两个按钮提供不同的功能。 但是为了保持代码的可维护性,我建议重用代码,这对于所有/两个按钮都是通用的(通过定义一个方法)。
代码可能类似于:
button1.addActionListener(e -> saveFile("Alnabi.pdf")); // Java8-Syntax
button2.addActionListener(e -> saveFile("AnotherOne.pdf"));
以及包含通用代码的方法:
public void saveFile(String variableFileName) {
File file = new File(SDCardRoot,"/Download/"+variableFileName);
...
}
首先编写一个代码来检查外部存储是否可用于 READ / WRITE 操作检查用户是否有权在外部存储上写入的方法
public static boolean canWriteOnExternalStorage() {
// get the state of your external storage
String state = Environment.getExternalStorageState();
if (Environment.MEDIA_MOUNTED.equals(state)) {
// if storage is mounted return true
Log.v(“sTag”, “Yes, can write to external storage.”);
return true;
}
return false;
}
使用此代码保存文件
File sdcard = Environment.getExternalStorageDirectory();
File dir = new File(sdcard.getAbsolutePath() + “/your-dir-name/”);
dir.mkdir();
File file = new File(dir, “My-File-Name.txt”);
FileOutputStream os = outStream = new FileOutputStream(file);
String data = “This is the content of my file”;
os.write(data.getBytes());
os.close();
需要以下权限
<uses-permission android:name=”android.permission.WRITE_EXTERNAL_STORAGE” />
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.