Androlid入门之文件系统操作(三)文件读写
2017-09-01 16:47
405 查看
[java] view plain copy
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入门之文件系统操作(三)文件读写
- 详解ios文件系统文件目录读写操作
- web前端进阶03:初学nodeJS 之 fs文件模块对系统文件及目录进行读写操作 ! 上手快,实用于小白
- HDFS文件系统简单的Java读写操作
- iMOOC学习笔记:Java的Excel读写操作入门实践-利用POI解析Excel文件(二)
- iMOOC学习笔记:Java的Excel读写操作入门实践-创建高版本的Excel文件
- sqlserver如何读写操作windows系统的文件
- 详解iPhone文件读写系统操作教程
- Android入门之文件系统操作(一)简单的文件浏览器
- Android入门之文件系统/File操作
- Android入门之文件系统操作
- node.js 使用fs模块对系统文件及目录进行读写操作
- PHP文件系统-文件的读写操作
- 详解ios文件系统文件目录读写操作-备用
- Android入门之文件系统操作(一)简单的文件浏览器
- node.js基于fs模块对系统文件及目录进行读写操作的方法详解
- Android入门之文件系统操作(二)文件操作相关指令
- Node和Electron开发入门(四):操作PC端文件系统
- OpenWrt中对USB文件系统的操作, 以及读写性能测试
- Linux入门基础 #5 Linux文件系统基本操作管理