Android 文件读写
发布时间:2020-05-25 15:30:57 所属栏目:Java 来源:互联网
导读:Android 文件读写
|
下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。 脚本之家小编现在分享给大家,也给大家做个参考。 <!-- 在SDCard中创建与删除文件权限 -->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<!-- 往SDCard写入数据权限 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
然后将文件操作封装在一个类中,在这里我把它命名为FileOption,先将代码粘贴如下: package com.example.littleapplication;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.RandomAccessFile;
import java.util.Vector;
import android.os.Environment;
import android.util.Log;
public class FileOption {
private String fileName;
private File targetFile;
private File sdCardDir;
public FileOption(String fileName) throws IOException {
// TODO Auto-generated constructor stub
boolean mark = Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED);
if(mark)
{
this.fileName = fileName;
this.sdCardDir = Environment.getExternalStorageDirectory();
this.targetFile = new File(this.sdCardDir.getCanonicalPath()+this.fileName);
if(this.targetFile.exists()==false)
{
this.targetFile.createNewFile();
}
}
else{
Log.e("SDK","无内存卡");
}
}
public Vector read() throws FileNotFoundException,IOException {
FileInputStream fis = new FileInputStream(this.sdCardDir.getCanonicalPath()+this.fileName);
BufferedReader br = new BufferedReader(new InputStreamReader(fis));
Vector res = new Vector();
String line = null;
while((line = br.readLine())!=null)
{
res.add(line);
}
br.close();
return res;
// TODO Auto-generated method stub
}
public boolean write(String add) throws IOException
{
RandomAccessFile raf = new RandomAccessFile(this.targetFile,"rw");
raf.seek(targetFile.length());
//换行
raf.write(add.getBytes());
raf.writeChar('n');
raf.close();
return true;
}
/**返回一共有多少条记录
* @throws IOException
* @throws FileNotFoundException */
public int size() throws FileNotFoundException,IOException
{
FileInputStream fis = new FileInputStream(this.sdCardDir.getCanonicalPath()+this.fileName);
BufferedReader br = new BufferedReader(new InputStreamReader(fis));
String line = null;
int count = 0;
while((line = br.readLine())!=null)
{
count++;
}
//每三行代表一个数据项
//分别是 id title content data level
return count/5;
}
}
以上是脚本之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。 如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Mybatis中SqlMapper配置的扩展与应用详细介绍(1)
- java – 在一个String中获取字符串数组的所有值
- java – 隐藏服务实现的最佳实践
- java – Hamcrest泛型地狱#2:iterableWithSize给出错误“不
- java – 关于Linux上的getBounds()和setBounds()的bug_id =
- java Swing实现选项卡功能(JTabbedPane)实例代码
- java – 如何以编程方式验证JPQL(JPA查询)
- 来自模板化对象的Java 8函数构造函数
- java – GCM – 在6次尝试后无法将JSON请求发布到GCM
- 我如何说服GroovyShell维护eval()调用的状态?
