使用Files存储文件笔记
来源:互联网 发布:北京工业大学网络教育 编辑:程序博客网 时间:2024/05/19 04:56
如果想对SD卡写入内容的时候,要记得想MainFestt添加相应的权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
以下是整个程序的截图:
以下是我这个程序的代码:
package hlp.com;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.TextView;
public class MyFiles extends Activity{
private TextView tv;
private EditText input;
private Button write, read, back;
private EditText disView;
private CheckBox read_Sd, write_Sd;
private static final String FILE_NAME = "fileDemo.txt";
private final int MODE = Context.MODE_WORLD_READABLE
+ Context.MODE_WORLD_WRITEABLE;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.myfiles);
createView();
setListener();
}
public void createView() {
tv = (TextView)findViewById(R.id.file_Text);
input = (EditText)findViewById(R.id.input_Sth);
disView = (EditText)findViewById(R.id.disFile);
write = (Button)findViewById(R.id.write_File);
read = (Button)findViewById(R.id.read_File);
back = (Button)findViewById(R.id.file_Back);
read_Sd = (CheckBox)findViewById(R.id.read_Sd);
write_Sd = (CheckBox)findViewById(R.id.write_Sd);
}//end
//
public void setListener() {
write.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
FileOutputStream fos = null;
String s = input.getText().toString();
try {
if (write_Sd.isChecked()) {
File dir = new File("/sdcard/");
if (dir.exists() && dir.canWrite() ) {
File newFile = new File(dir.getAbsolutePath() + "/" + FILE_NAME);
newFile.createNewFile();
if(newFile.exists() && newFile.canWrite()) {
fos = new FileOutputStream(newFile);
fos.write(s.getBytes());
tv.setText("文件写入SD卡成功,长度是: " + s.length());
}//end if
}//end if
else {
tv.setText("文件从SD卡写入错误!");
}//end else
}//end if
else {
fos = openFileOutput(FILE_NAME, MODE);
fos.write(s.getBytes());
tv.setText("文件写入成功,长度是: " + s.length());
}//end else
//OutStreamWriter osw = new OutSteamWriter(fos)
//osw.write(s);
//
}//end try
catch (Exception e ) {
e.printStackTrace();
}//end catch
finally {
if (fos != null) {
try {
fos.flush();
fos.close();
}//end try
catch (Exception e) {
e.printStackTrace();
}//end catch
}//end inside if
}//end finally
}//end onClick()
});
//读出
read.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
FileInputStream fis = null;
try {
if (read_Sd.isChecked()) {
File dir = new File("/sdcard/");
if (dir.canRead() && dir.exists()) {
File newFile = new File(dir.getAbsolutePath() + "/" + FILE_NAME);
newFile.createNewFile();
if(newFile.exists() && newFile.canRead()) {
fis = new FileInputStream(newFile);
byte[] readBytes = new byte[fis.available()];
while (fis.read(readBytes) != -1){}
String s = new String(readBytes);
disView.setText(s);
tv.setText("文件从SD卡读出成功!");
}//end if
}//end if
else {
tv.setText("文件从SD卡读出错误!");
}//end else
}//end if
else {
fis = openFileInput(FILE_NAME);
if (fis.available() == 0) {
return;
}//end inside if
//声明一个数组,用来存放缓冲区的内容
byte[] readBytes = new byte[fis.available()];
while ( fis.read(readBytes) != -1) {
}//end while
String s = new String (readBytes);
disView.setText(s);
tv.setText("文件读出成功!");
}//end else
}//end try
catch (Exception e) {
e.printStackTrace();
}//end catch
}
});
back.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = null;
i = new Intent();
i.setClass(MyFiles.this, DataStorage.class);
MyFiles.this.finish();
}
});
}//end func
}//end all
- 使用Files存储文件笔记
- 使用Files对象存储数据
- 使用Java8 Files类读写文件
- Saving Files on External Storage 在外部存储保存文件
- 自学Android系列 笔记2 使用文件进行数据存储
- android数据存储-->Files
- Android学习笔记——保存文件(Saving Files)
- 七牛云存储使用笔记
- 使用文件存储数据
- 使用list.files函数遍历文件夹中的文件
- 使用Files.lines遇到文件编码带bom的问题
- Android开发笔记 -- 文件存储
- 数据储存(1):文件存储,保存至/data/data/"package_name"/files/目录下
- Android使用内部存储存储文件
- 【Android】数据存储之Files
- Android数据存储(二) Files
- Android数据存储之间Files
- Sharing Files笔记
- Android操作系统发展历程
- VC++开发BHO插件
- IEnumerable与IEnumerator
- 该不该从大学退学的讨论
- Big Data 2011
- 使用Files存储文件笔记
- 心情不好
- String.Format 方法 (String, Object)
- 冲突域
- Jetty 设置IP和localhost都可以访问的方法
- oracle学习记录之五--第8讲
- Ext Js 3.2 边框布局--BorderLayout的应用
- Tolecontainer的简单应用
- 洞窟物语v1.0.2按键修改