Androlid入门之文件系统操作(三)文件读写

- import java.io.*;
- import android.app.Activity;
- import android.os.Bundle;
- import android.view.View;
- import android.view.View.OnClickListener;
- import android.widget.*;
- public class FileIOTest extends Activity {
- private LinearLayout mainView=null;
- private Button writeButton=null;
- private Button readButton=null;
- private TextView tv=null;
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- writeButton=new Button(this);
- writeButton.setText("文件写入");
- writeButton.setOnClickListener(new OnClickListener(){
- public void onClick(View v) {
- fileWrite();
- }
- });
- readButton=new Button(this);
- readButton.setEnabled(false);
- readButton.setText("文件读出");
- readButton.setOnClickListener(new OnClickListener(){
- public void onClick(View v) {
- fileRead();
- }
- });
- tv=new TextView(this);
- tv.setText("这里显示读出结果");
- mainView=new LinearLayout(this);
- mainView.setOrientation(LinearLayout.VERTICAL);
- mainView.addView(writeButton);
- mainView.addView(readButton);
- mainView.addView(tv);
- setContentView(mainView);
- }
- /*文件写*/
- void fileWrite(){
- //File file=this.getFilesDir();//打开私有目录
- File file=new File("/sdcard");
- String path=file.getAbsolutePath();//获取路径
- String name="mydata1.dat";//新建文件名
- File filex=new File(path,name);
- //如果文件不存在,则创建一个文件
- if(!filex.exists()){
- try {
- filex.createNewFile();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- //获取文件输出流
- FileOutputStream fos=null;
- try {
- fos=new FileOutputStream(filex);
- byte buf[]="Hello,这是Android入门之文件操作(三)文件读写!".getBytes();
- //上面涉及到字符串转字符,为了保证编码正常,建议采用下面的方法
- //ByteArrayOutputStream baos=new ByteArrayOutputStream();
- //DataOutputStream dos=new DataOutputStream(baos);
- //try {dos.writeUTF("XXXXXXXXXXXXXXXXX");catch (IOException e1) {e1.printStackTrace();}
- //byte[] buf=baos.toByteArray();
- try {
- fos.write(buf);//全面覆盖式的写,如果要添加或者修改,得把原来的先读出来再做处理
- fos.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- } catch (FileNotFoundException e) {
- e.printStackTrace();
- }
- readButton.setEnabled(true);
- }
- /*文写读*/
- void fileRead(){
- //File file=this.getFilesDir();//打开私有目录
- File file=new File("/sdcard");
- String path=file.getAbsolutePath();//获取路径
- String name="mydata1.dat";//新建文件名
- File filex=new File(path,name);
- //
- try {
- FileInputStream fis=new FileInputStream(filex);
- byte buf[]=new byte[1024];
- try {
- int len=fis.read(buf);
- fis.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- //显示读取结果
- tv.setText(new String(buf));
- //上面涉及字符转字符串,为了保证编码正常,建议采用下面的方法
- //ByteArrayInputStream bais=new ByteArrayInputStream(buf);
- //DataInputStream dis=new DataInputStream(bais);
- //try {tv.setText(dis.readUTF());} catch (IOException e) {e.printStackTrace();}
- } catch (FileNotFoundException e) {
- e.printStackTrace();
- }
- }
- }
Androlid入门之文件系统操作(三)文件读写的更多相关文章
- Android入门之文件系统操作(一)简单的文件浏览器 (转)
Android入门之文件系统操作(一)简单的文件浏览器 (转) import java.io.File; import java.util.*; import android.app.A ...
- Android入门之文件系统操作
Android入门之文件系统操作(二)文件操作相关指令 (转) (一)获取总根 File[] fileList=File.listRoots(); //返回fileList.length为1 // ...
- QSettings配置读写-win注册表操作-ini文件读写
版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:QSettings配置读写-win注册表操作-ini文件读写 本文地址:http:// ...
- ActionScript 3.0入门:Hello World、文件读写、数据存储(SharedObject)、与JS互调
近期项目中可能要用到Flash存取数据,并与JS互调,所以就看了一下ActionScript 3.0,现把学习结果分享一下,希望对新手有帮助. 目录 ActionScript 3.0简介 Hello ...
- [转]ActionScript 3.0入门:Hello World、文件读写、数据存储(SharedObject)、与JS互调
本文转自:http://www.cnblogs.com/artwl/p/3396330.html 近期项目中可能要用到Flash存取数据,并与JS互调,所以就看了一下ActionScript 3.0, ...
- python基础操作_文件读写操作
#文件读写# r只能读不能写,且文件必须存在,w只能写不能读,a只能写不能读# w+是写读模式,清空原文件内容# r+是读写模式,没有清空原文件内容,# 只要有r,文件必须存在,只要有w,都会清空原文 ...
- Android入门之文件系统操作(二)文件操作相关指令
(一)获取总根 File[] fileList=File.listRoots(); //返回fileList.length为1 //fileList.getAbsolutePath()为"/ ...
- Android入门之文件系统操作(一)简单的文件浏览器
版权声明:本文为博主原创文章,未经博主允许不得转载. import java.io.File; import java.util.*; import android.app.Activit ...
- .net对文件的操作之文件读写
读写文件的步骤一般需要5步: 创建文件流 创建读写器 执行读或写的操作 关闭读写器 关闭文件流 需要引用:System.IO这个命名空间 代码演示: string path = @"F:\a ...
随机推荐
- [Android]异常6-TextView setText延迟显示
背景:Thread和Handler显示数据到界面 解决办法有: 解决一>界面使用了ListView.GridView等,把高度和宽度调整为固定值或者match_parent 解决二>某处U ...
- 【PostgreSQL-9.6.3】临时表
PostgreSQL中的临时表分两种,一种是会话级临时表,一种是事务级临时表.在会话级临时表中,数据可以存在于整个会话的生命周期中,在事务级临时表中的数据只能存在于事务的生命周期中.1. 会话级临时表 ...
- JS高级——扩展内置对象的方法
基本概念 内置对象有很多,几个比较重要的:Math.String.Date.Array 基本使用 1.内置对象创建出来的对象使用的方法使用的其实都是内置对象的原型对象中的方法 (1)a并没有charA ...
- JS——正则案例
验证座机号码 <!DOCTYPE html> <html> <head lang="en"> <meta charset="UT ...
- Redis系列(一)StackExchange.Redis的使用
Redis系列(一)StackExchange.Redis的使用 一.DLL安装 用NuGet搜索StackExchange.Redis,然后下载就可以. ConnectionMultiplexer对 ...
- dos命令在vba中应用
正常情况下想要遍历文件夹和子文件夹,可以采用递归的方式 Sub ListFilesTest() With Application.FileDialog(msoFileDialogFolderPicke ...
- BZOJ 4561: [JLoi2016]圆的异或并 扫描线 + set
看题解看了半天...... Code: #include<bits/stdc++.h> #define maxn 200010 #define ll long long using nam ...
- Django - 一对多跨表操作
1.views.py 2.host.html 运行结果: 通过外键,来进行多表取值(多表取值包括后台取值及前端获取): 多表获取数据时,可以通过以下几种方式实现: 1.从query set 中获取某 ...
- NTP测试1
ntp server A : 10.101.75.8 B : 10.101.75.38 B: [root@r10n16313.sqa.zmf /home/ahao.mah] #cat /etc/ntp ...
- Vue中.sync修饰符
Vue 中 sync的作用 <FatherComponent :a.sync = 'b'><FatherComponent /> 子组件中emit('update:a',... ...