写入SD卡代码为:
private void write(String content){
// 如果有SD卡且手机有访问SD卡的权限
if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
try {
// 获取SD卡的目录
File sdCardDir = Environment.getExternalStorageDirectory();
File targetFile = new File(sdCardDir.getCanonicalPath()+FILE_NAME);
// 指定文件方式创建RandomAccessFile对象,权限为读写
RandomAccessFile raf = new RandomAccessFile(targetFile,"rw");
// 文件指针移动到文件最后
raf.seek(targetFile.length());
// 将内容写入到文件中去
raf.write(content.getBytes());
// 关闭raf对象
raf.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}读取SD卡代码为:
private String read(){
if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
try {
// 获取SD卡目录
File sdCardDir = Environment.getExternalStorageDirectory();
FileInputStream fis = new FileInputStream(sdCardDir.getCanonicalPath()
+ FILE_NAME);
BufferedReader br = new BufferedReader(new InputStreamReader(fis));
String line = null;
StringBuilder sb = new StringBuilder("");
while ((line = br.readLine()) != null) {
sb.append(line);
}
br.close();
return sb.toString();
} catch (IOException e) {
e.printStackTrace();
}
}
return "未读取到";
}注:添加2个权限
<!--向SD卡写入的权限--> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <!--在SD卡中创建,删除文件的权限--> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
本文提供了在Android应用中实现SD卡文件读写的示例代码。包括检查SD卡状态、获取SD卡路径、创建及操作文件等步骤,并展示了如何使用RandomAccessFile进行文件追加写入及通过BufferedReader进行逐行读取。

被折叠的 条评论
为什么被折叠?



