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开发中常用的ListView列表的优化方式ViewHolder
在Android开发中难免会遇到大量的数据加载到ListView中进行显示, 然后其中最重要的数据传递桥梁Adapter适配器是常用的,随着市场的需 求变化ListView'条目中的内容是越来越多这就 ...
- JS高级——封装注册事件
兼容性问题 1.ele.on事件类型 = function(){}一个元素ele注册一种事件多次,会被替换成最后一个,所以有局限性 2.addEventListener(事件类型,事件处理函数,use ...
- html——快捷键
webstorm ctrl+c 复制 ctrl+v 粘贴 ctrl+x 剪切一行或删除一行 ctrl+d 复制本行到下一行 ctrl+z 退回之前操作 ctrl+shift+z 已经做好的退回之后的下 ...
- Java_Web三大框架之Hibernate+HQL语言基础
12.1 HQL语言基础Hibernate查询语言为HQL(Hibernate Query Language),可以直接使用实体类名及属性.HQL语法类似于SQL,有SQL的关键词如select.fr ...
- 一个例子理解ES6的yield关键字
yield是什么 yield是ES6的新关键字,使函数暂停执行. 一个简单例子 function *countASb() { console.log('Show0:'); var a1 = yield ...
- shell脚本网络流量实时查看
Linux网络流量实时查看脚本,Centos默认没有自带流量查看工具,通过网上的资料做了一些修改 #!/bin/bash # Author: Ca0gu0 # Script Name: idev.sh ...
- (转) Arcgis for js之WKT和GEOMETRY的相互转换
http://blog.csdn.net/gisshixisheng/article/details/44057453 1.wkt简介 WKT(Well-known text)是一种文本标记语言,用于 ...
- Codeforces_732D_(二分贪心)
D. Exams time limit per test 1 second memory limit per test 256 megabytes input standard input outpu ...
- 注解是建立在class文件基础上的东西,同C语言的宏有异曲同工的效果
注解是建立在class文件基础上的东西,同C语言的宏有异曲同工的效果 https://www.cnblogs.com/deman/p/5519901.html @是java注解,即annotation ...
- 大神所写的深度好文---Gradle 构建工具
什么是构建工具? 我们大家都知道 Gradle 是一种构建工具,那么什么是构建工具呢? 网上一大堆的文字解释我觉得很难理解,这里我以咱们 Android 开发来举个例子吧. 我们以前开发都是用 Ecl ...