手机
当前位置:查字典教程网 >编程开发 >安卓软件开发 >android开发基础教程—文件存储功能实现
android开发基础教程—文件存储功能实现
摘要:文件存储:复制代码代码如下:publicclassMainActivityextendsActivity{EditTextmname,mag...

文件存储:

复制代码 代码如下:

public class MainActivity extends Activity {

EditText mname, mage;

TextView mtv;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

mname = (EditText) findViewById(R.id.editText1);

mage = (EditText) findViewById(R.id.editText2);

mtv = (TextView) findViewById(R.id.textView1);

}

public void onClick(View v) {

String name = mname.getText().toString();

int age = Integer.parseInt(mage.getText().toString());

String cont = "name=" + name + ",age=" + age + "n";

try {

int id = v.getId();

// 内部保存

if (id == R.id.button1) {

FileOutputStream fos = this.openFileOutput("mytext.txt",

Context.MODE_APPEND | Context.MODE_WORLD_WRITEABLE

| Context.MODE_WORLD_READABLE);

fos.write(cont.getBytes());

fos.close();

Toast.makeText(this, "写入完成", 1).show();

}

// 读取

else if (id == R.id.button2) {

FileInputStream fis = this.openFileInput("mytext.txt");

byte[] bytes = new byte[fis.available()];

fis.read(bytes);

fis.close();

String str = new String(bytes);

mtv.setText(str);

}

} catch (Exception e) {

e.printStackTrace();

}

}

其他app如果想要访问这个mytext.txt文件格式如下:

复制代码 代码如下:

public class MainActivity extends Activity {

TextView mcontent;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

mcontent=(TextView) findViewById(R.id.textView1);

}

public void onClick(View v){

switch (v.getId()) {

case R.id.button1:

try {

readRemoteFileByAbslutePath();

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

break;

case R.id.button2:

try {

WriteRemoteFileByAbslutePath();

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

break;

default:

break;

}

}

/**

* 通过文件绝对路径读取远程文件

* @throws Exception

*/

public void readRemoteFileByAbslutePath() throws Exception{

String path = "/data/data/com.nanguabing.filedemo/files/mytext.txt" ;

FileInputStream fis = new FileInputStream(path);

byte[] bytes = new byte[fis.available()];

fis.read(bytes);

fis.close();

String str = new String(bytes);

mcontent.setText(str);

Log.i("Other", str);

}

/**

* 通过文件绝对路径读取远程文件

* @throws Exception

*/

public void WriteRemoteFileByAbslutePath() throws Exception{

String path = "/data/data/com.nanguabing.filedemo/files/mytext.txt" ;

FileOutputStream fos = new FileOutputStream(path,true);

fos.write("other write! ".getBytes());

fos.close();

Log.i("Other", "other write over!");

}

/**

* 通过包相关上下文写入远程文件

* @throws Exception

*/

public void readRomoteByPackageContext() throws Exception {

String pname = "com.nanguabing.filedemo";

Context ctx = this.createPackageContext(pname,

Context.CONTEXT_IGNORE_SECURITY);

FileInputStream fis = ctx.openFileInput("mytext.txt");

byte[] bytes = new byte[fis.available()];

fis.read(bytes);

fis.close();

Log.i("Other",new String(bytes));

}

/**

* 通过包相关上下文写入远程文件

*/

public void readRomoteByPackageContext2() throws Exception {

String pname = "com.nanguabing.filedemo";

Context ctx = this.createPackageContext(pname,

Context.CONTEXT_INCLUDE_CODE);

FileInputStream fis = ctx.openFileInput("mytext.txt");

byte[] bytes = new byte[fis.available()];

fis.read(bytes);

fis.close();

Log.i("Other",new String(bytes));

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

getMenuInflater().inflate(R.menu.activity_main, menu);

return true;

}

}

【android开发基础教程—文件存储功能实现】相关文章:

Android开发常用小功能

Android监听文件和目录动态

android apk反编译到java源码的实现方法

android 开发 文件读写应用案例分析

android异步加载图片并缓存到本地实现方法

Android开发之选项组件

Android开发笔记 今天学到的一些属性

android获取屏幕的长与宽实现代码(手写)

Android开发之动画实现方法

Android:多线程之图文混排

精品推荐
分类导航