Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Android应用程序中读写txt文本文件的基本方法讲解大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

Android应用程序中读写txt文本文件的基本方法讲解

最终效果图,点击save会保存到文件中,点击show会从文件中读取出内容显示

Android应用程序中读写txt文本文件的基本方法讲解

@H_832_0@main.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://@R_675_10906@mas.android.com/apk/res/android" 
  android:orientation="vertical" 
  android:layout_width="fill_parent" 
  android:layout_height="fill_parent" 
  > 
<TextView  
  android:layout_width="fill_parent"  
  android:layout_height="wrap_content"  
  android:text="请您输入要保存的内容:" 
  /> 
 <EditText 
  android:id="@+id/addText" 
  android:layout_width="fill_parent"  
  android:layout_height="wrap_content" 
  android:hint="请您在此处输入文件内容!" 
 />   
 <Button  
  android:id="@+id/addButton" 
  android:layout_width="wrap_content"  
  android:layout_height="wrap_content" 
  android:text="save" 
 /> 
 <Button 
  android:id="@+id/showButton" 
  android:layout_width="wrap_content"  
  android:layout_height="wrap_content" 
  android:text="show" 
 /> 
 <TextView 
  android:id="@+id/showText"  
  android:layout_width="fill_parent"  
  android:layout_height="wrap_content"  
  /> 
  
</LinearLayout> 

activity代码

package cn.com.file; 
 
import java.io.byteArrayOutputStream; 
import java.io.FileInputStream; 
import java.io.FileNotFoundException; 
import java.io.FiLeoutputStream; 
import java.io.IOException; 
 
import android.app.Activity; 
import android.os.bundle; 
import android.view.View; 
import android.view.View.onClickListener; 
import android.widget.button; 
import android.widget.EditText; 
import android.widget.TextView; 
import android.widget.Toast; 
 
public class FileTest extends Activity { 
  private EditText editText; 
  private TextView showTextView; 
  // 要保存的文件名 
  private String filename = "chenzheng_java.txt"; 
 
  @Override 
  public void onCreate(Bundle savedInstanceStatE) { 
    super.onCreate(savedInstanceStatE); 
    setContentView(R.layout.main); 
    // 获取页面中的组件 
    editText = (EditText) findViewById(R.id.addText); 
    showTextView = (TextView) findViewById(R.id.showText); 
    Button addButton = (Button) this.findViewById(R.id.addButton); 
    Button showButton = (Button) this.findViewById(R.id.showButton); 
    // 绑定单击事件 
    addButton.setOnClickListener(listener); 
    showButton.setOnClickListener(listener); 
 
  } 
 
  // 声明监听器 
  private View.onClickListener listener = new OnClickListener() { 
    public void onClick(View v) { 
      Button view = (Button) v; 
      switch (view.getId()) { 
      case R.id.addButton: 
        save(); 
        break; 
      case R.id.showButton: 
        read(); 
        break; 
 
      } 
 
    } 
 
  }; 
 
  /** 
   *@author chenzheng_Java 
   *保存用户输入的内容文件 
   */ 
  private void save() { 
 
    String content = editText.getText().toString(); 
    try { 
      /* 根据用户提供的文件名,以及文件的应用模式,打开一个输出流.文件不存系统会为你创建一个的, 
       * 至于为什么这个地方还有FileNotFoundException抛出,我也比较纳闷。在Context中是这样定义的 
       *  public abstract FiLeoutputStream openFiLeoutput(String name,int mode) 
       *  throws FileNotFoundException; 
       * openFiLeoutput(String name,int mode); 
       * 第一个参数,代表文件名称,注意这里的文件名称不能包括任何的/或者/这种分隔符,只能是文件名 
       *     该文件会被保存在/data/data/应用名称/files/chenzheng_java.txt 
       * 第二个参数,代表文件的操作模式 
       *     MODE_PRIVATE 私有(只能创建它的应用访问) 重复写入时会文件覆盖 
       *     MODE_APPEND 私有  重复写入时会在文件的末尾进行追加,而不是覆盖掉原来的文件 
       *     MODE_WORLD_READABLE 公用 可读 
       *     MODE_WORLD_WRITEABLE 公用 可读写 
       * */ 
      FiLeoutputStream outputStream = openFiLeoutput(filename,Activity.MODE_PRIVATE); 
      outputStream.write(content.getBytes()); 
      outputStream.flush(); 
      outputStream.close(); 
      Toast.makeText(FileTest.this,"保存成功",Toast.LENGTH_LONG).show(); 
    } catch (FileNotFoundException E) { 
      e.printStackTrace(); 
    } catch (IOException E) { 
      e.printStackTrace(); 
    } 
 
  } 
 
  /** 
   * @author chenzheng_java 
   * 读取刚才用户保存的内容 
   */ 
  private void read() { 
    try { 
      FileInputStream inputStream = this.openFileInput(fileName); 
      byte[] bytes = new byte[1024]; 
      ByteArrayOutputStream arrayOutputStream = new ByteArrayOutputStream(); 
      while (inputStream.read(bytes) != -1) { 
        arrayOutputStream.write(bytes,bytes.length); 
      } 
      inputStream.close(); 
      arrayOutputStream.close(); 
      String content = new String(arrayOutputStream.toByteArray()); 
      showTextView.setText(content); 
 
    } catch (FileNotFoundException E) { 
      e.printStackTrace(); 
    } catch (IOException E) { 
      e.printStackTrace(); 
    } 
 
  } 
 
} 

其他的都为认。

关于文件保存的路径可以通过ADT携带的File Explorer工具进行查看。如何调出File Explorer工具呢;我们可以通过Windows--showView--others-android下面看到File Explorer。这里是我的一个截图。

Android应用程序中读写txt文本文件的基本方法讲解

对于这个程序,基本上没什么难点,就是纯粹的java流知识。唯一不同的就是context为我们提供了两个方法获取输入输出流。简单、方便、快捷啊。

大佬总结

以上是大佬教程为你收集整理的Android应用程序中读写txt文本文件的基本方法讲解全部内容,希望文章能够帮你解决Android应用程序中读写txt文本文件的基本方法讲解所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:文件读写