参考:
AssetManager
assets 文件夹用于存储应用需要的文件,在安装后可直接从其中读取使用或者写入本地存储中
Android Studio 默认不建立该文件夹,可以手动新建 : app ->src ->main ->assets
或者,右键 main ->New ->Folder ->Assets Folder
AssetManager 对象可以直接访问该文件夹:
获取方法:
使用函数 open 可以打开 assets 文件夹中对象,返回一个 InputStream 对象:
open
获取方法:
读文件:
1、通过File获取文件
2、打开输入流,读取文件
写文件:
1、创建文件
2、打开输出流,写入文件内容
示例:
读文件:String content = "" //文件内容字符串
//通过路径/sdcard/foo.txt打开文件
File file = new File("/sdcard/foo.txt")
try {
InputStream instream = new FileInputStream(file)//读取输入流
InputStreamReader inputreader = new InputStreamReader(instream)//设置流读取方式
BufferedReader buffreader = new BufferedReader(inputreader)
while (( line = buffreader.readLine()) != null) {
content += line + "\n"//读取的文件内容
}
}catch(Exception ex){
} 写文件:
File file = new File("/sdcard/foo.txt")//
if(!file.exists())
file.createNewFile()//如果文件不存在,创建foo.txt
try {
OutputStream outstream = new FileOutputStream(file)//设置输出流
OutputStreamWriter out = new OutputStreamWriter(outstream)//设置内容输出方式
out.write("文字内容")//输出内容到文件中
out.close()
} catch (java.io.IOException e) {
e.printStackTrace()
}
Activity提供了openFileOutput()方法可以用于把数据输出到文件中 具体的实现过程与在J SE环境中保存数据到文件中是一样的
public class FileActivity extends Activity {
@Override public void onCreate(Bundle savedInstanceState) {
&#
FileOutputStream outStream = this openFileOutput(&# itcast txt&# Context MODE_PRIVATE)
outStream write(&# 传智播客&# getBytes())
outStream close()
}
}
openFileOutput()方法的第一参数用于指定文件名称 不能包含路径分隔符 / 如果文件不存在 Android 会自动创建它 创建的文件保存在/data/data/<package name>/files目录 如 /data/data/cn itcast action/files/itcast txt 通过点击Eclipse菜单 Window Show View Other 在对话窗口中展开android文件夹 选择下面的File Explorer视图 然后在File Explorer视图中展开/data/data/<package name>/files目录就可以看到该文件
openFileOutput()方法的第二参数用于指定 *** 作模式 有四种模式 分别为 Context MODE_PRIVATE ?=?
Context MODE_APPEND ?=?
Context MODE_WORLD_READABLE =?
Context MODE_WORLD_WRITEABLE =?
Context MODE_PRIVATE 为默认 *** 作模式 代表该文件是私有数据 只能被应用本身访问 在该模式下 写入的内容会覆盖原文件的内容 如果想把新写入的内容追加到原文件中 可以使用Context MODE_APPEND
Context MODE_APPEND 模式会检查文件是否存在 存在就往文件追加内容 否则就创建新文件
Context MODE_WORLD_READABLE和Context MODE_WORLD_WRITEABLE用来控制其他应用是否有权限读写该文件
MODE_WORLD_READABLE 表示当前文件可以被其他应用读取 MODE_WORLD_WRITEABLE 表示当前文件可以被其他应用写入
如果希望文件被其他应用读和写 可以传入
openFileOutput(&# itcast txt&# Context MODE_WORLD_READABLE + Context MODE_WORLD_WRITEABLE)
lishixinzhi/Article/program/yd/201404/30438
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)