欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android编程中File文件常见存储与读取操作demo示例

程序员文章站 2023-12-19 08:09:52
本文实例讲述了android编程中file文件常见存储与读取操作。分享给大家供大家参考,具体如下: mainactivity文件代码如下: package ex...

本文实例讲述了android编程中file文件常见存储与读取操作。分享给大家供大家参考,具体如下:

mainactivity文件代码如下:

package example.com.myapplication;
import android.app.activity;
import android.os.bundle;
import android.view.view;
import android.widget.button;
import android.widget.edittext;
import java.io.fileinputstream;
import java.io.fileoutputstream;
import java.io.printstream;
public class mainactivity extends activity
{
  final string file_name = "test.txt";
  @override
  public void oncreate(bundle savedinstancestate)
  {
    super.oncreate(savedinstancestate);
    setcontentview(r.layout.activity_main);
    system.out.println(new stringbuilder("a").append("b").append("c")
        .tostring());
    // 获取两个按钮
    button read = (button) findviewbyid(r.id.read);
    button write = (button) findviewbyid(r.id.write);
    // 获取两个文本框
    final edittext edit1 = (edittext) findviewbyid(r.id.edit1);
    final edittext edit2 = (edittext) findviewbyid(r.id.edit2);
    // 为write按钮绑定事件监听器
    write.setonclicklistener(new view.onclicklistener()
    {
      @override
      public void onclick(view source)
      {
        // 将edit1中的内容写入文件中
        write(edit1.gettext().tostring());
        edit1.settext("");
      }
    });
    read.setonclicklistener(new view.onclicklistener()
    {
      @override
      public void onclick(view v)
      {
        // 读取指定文件中的内容,并显示出来
        edit2.settext(read());
      }
    });
  }
  private string read()
  {
    try
    {
      // 打开文件输入流
      fileinputstream fis = openfileinput(file_name);
      byte[] buff = new byte[1024];
      int hasread = 0;
      stringbuilder sb = new stringbuilder("");
      while ((hasread = fis.read(buff)) > 0)
      {
        sb.append(new string(buff, 0, hasread));
      }
      return sb.tostring();
    }
    catch (exception e)
    {
      e.printstacktrace();
    }
    return null;
  }
  private void write(string content)
  {
    try
    {
      // 以追加模式打开文件输出流
      fileoutputstream fos = openfileoutput(file_name, mode_append);
      // 将fileoutputstream包装成printstream
      printstream ps = new printstream(fos);
      // 输出文件内容
      ps.println(content);
      ps.close();
    }
    catch (exception e)
    {
      e.printstacktrace();
    }
  }
}

布局文件代码如下:

<!--?xml version="1.0" encoding="utf-8"?-->
<linearlayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="vertical">
  <edittext
    android:id="@+id/edit1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:lines="4"/>
    <button
      android:id="@+id/write"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="write"/>
  <edittext
    android:id="@+id/edit2"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:editable="false"
    android:lines="4"/>
  <button
    android:id="@+id/read"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="read"/>
  </linearlayout>

更多关于android相关内容感兴趣的读者可查看本站专题:《android文件操作技巧汇总》、《android视图view技巧总结》、《android编程之activity操作技巧总结》、《android布局layout技巧总结》、《android开发入门与进阶教程》、《android资源操作技巧汇总》及《android控件用法总结

希望本文所述对大家android程序设计有所帮助。

上一篇:

下一篇: