Android中的文件存储练习

  1 package com.example.filedemo1;
  2
  3 import java.io.BufferedReader;
  4 import java.io.BufferedWriter;
  5 import java.io.ByteArrayOutputStream;
  6 import java.io.File;
  7 import java.io.FileInputStream;
  8 import java.io.FileNotFoundException;
  9 import java.io.FileOutputStream;
 10 import java.io.FileReader;
 11 import java.io.FileWriter;
 12 import java.io.IOException;
 13
 14 import android.os.Bundle;
 15 import android.app.Activity;
 16 import android.util.Log;
 17 import android.view.Menu;
 18 import android.view.View;
 19 import android.view.View.OnClickListener;
 20 import android.widget.Button;
 21 import android.widget.EditText;
 22 import android.widget.TextView;
 23 import android.widget.Toast;
 24
 25 public class MainActivity extends Activity {
 26 //    private BufferedWriter bufferedWriter;
 27 //    private BufferedReader bufferedReader;
 28     private EditText edt;
 29     private Button bt;
 30     private TextView tv;
 31     @Override
 32     protected void onCreate(Bundle savedInstanceState) {
 33         super.onCreate(savedInstanceState);
 34         setContentView(R.layout.activity_main);
 35 //        File file = new File("/mnt/sdcard/text");
 36 //        if(!file.exists()){
 37 //            try {
 38 //                file.createNewFile();
 39 //                Toast.makeText(MainActivity.this, "创建文件成功!", Toast.LENGTH_SHORT).show();
 40 //            } catch (IOException e) {
 41 //                // TODO Auto-generated catch block
 42 //                e.printStackTrace();
 43 //            }
 44 //        }else{
 45 //            Toast.makeText(MainActivity.this, "文件已存在!", Toast.LENGTH_SHORT).show();
 46 //        }
 47 ////        file.delete();
 48 //        try {
 49 //            bufferedWriter = new BufferedWriter(new FileWriter("/mnt/sdcard/text",true));
 50 //            bufferedWriter.write("第一行!");
 51 //            bufferedWriter.newLine();
 52 //            bufferedWriter.write("第二行!");
 53 //            bufferedWriter.flush();
 54 //            bufferedWriter.close();
 55 //            bufferedReader = new BufferedReader(new FileReader("/mnt/sdcard/text"));
 56 //            Log.i("info",bufferedReader.readLine());
 57 //            Log.i("info",bufferedReader.readLine());
 58 //        } catch (IOException e) {
 59 //            // TODO Auto-generated catch block
 60 //            e.printStackTrace();
 61 //        }
 62 //        File file = this.getFilesDir();
 63 //        Log.i("info", file.toString());
 64 //        File file = this.getCacheDir();
 65 //        Log.i("info", file.toString());
 66 //        File file = this.getDir("imooc", MODE_PRIVATE);
 67 //        Log.i("info", file.toString());
 68 //        File file = this.getDir("mirror", MODE_PRIVATE);
 69 //        Log.i("info", file.toString());
 70 //        File file = this.getExternalCacheDir();
 71 //        Log.i("info", file.toString());
 72         edt = (EditText) findViewById(R.id.editText1);
 73         bt = (Button) findViewById(R.id.write);
 74         tv = (TextView) findViewById(R.id.contentvalue);
 75 //        try {
 76 //            bufferedWriter = new BufferedWriter(new FileWriter("/mnt/sdcard/text"));
 77 //            bufferedReader = new BufferedReader(new FileReader("/mnt/sdcard/text"));
 78 //            bt.setOnClickListener(new OnClickListener() {
 79 //
 80 //                @Override
 81 //                public void onClick(View v) {
 82 //                    // TODO Auto-generated method stub
 83 //                    String str = edt.getText().toString();
 84 //                    Log.i("info", str);
 85 //                    if(str != null) {
 86 //                            try {
 87 //                                bufferedWriter.write("a");
 88 //                                bufferedWriter.flush();
 89 //                                bufferedWriter.close();
 90 //                                str = bufferedReader.readLine();
 91 //                                Log.i("info", str);
 92 //                                if(str!= null){
 93 //                                    Log.i("info", str);
 94 //                                    tv.append(str);
 95 //                                    Log.i("info", str);
 96 //                                    str = bufferedReader.readLine();
 97 //                                }
 98 ////                                Log.i("info", str);
 99 //                                bufferedReader.close();
100 //                            } catch (IOException e) {
101 //                                // TODO Auto-generated catch block
102 //                                e.printStackTrace();
103 //                            }
104 //                    }
105 //                }
106 //            });
107 //        } catch (IOException e) {
108 //            // TODO Auto-generated catch block
109 //            e.printStackTrace();
110 //        }
111         bt.setOnClickListener(new OnClickListener() {
112
113             @Override
114             public void onClick(View v) {
115                 // TODO Auto-generated method stub
116                 try {
117                     writeFiles(edt.getText().toString());
118                     tv.setText(readFiles());
119                 } catch (IOException e) {
120                     // TODO Auto-generated catch block
121                     e.printStackTrace();
122                 }
123             }
124         });
125     }
126
127     public void writeFiles(String content) throws IOException {
128         FileOutputStream fos = openFileOutput("a.txt", MODE_PRIVATE);
129         fos.write(content.getBytes());
130         fos.close();
131     }
132
133     public String readFiles() throws IOException {
134         String content = null;
135         FileInputStream fis = openFileInput("a.txt");
136         ByteArrayOutputStream baos = new ByteArrayOutputStream();
137         byte[] buffer = new byte[1024];
138         int len = 0;
139         while((len = fis.read(buffer)) != -1) {
140             baos.write(buffer,0,len);
141         }
142         content = baos.toString();
143         fis.close();
144         baos.close();
145         return content;
146     }
147 }

xml布局中有一个EditText,一个Button和一个TextView。自己在看教程之前先写了一个,失败。下面是教程中给出的方法。中间因为搞错了组件id,浪费了很多时间。

时间: 2024-10-18 17:33:17

Android中的文件存储练习的相关文章

Android中的文件存储

另见Android中的文件存储 一.前言 文件存储时Android中最基本的一种数据存储方式,它不对存储的内容进行任何的格式化处理,所有数据都是原封不动地保存到文件当中的,因此它比较适合用于存储一些简单的文本数据或二进制数据. 二.将数据存储到文件中 Context类中提供了一个openFileOutput()方法,可以用于将数据存储到指定的文件中. 可以看到,此方法接收两个参数,第一个即是文件的名字,这里不可以包含文件路径,所有的文件都是默认存储到/data/data//files/目录下的.

Android中的文件存储数据方式

转自以下文章: http://blog.csdn.net/zuolongsnail/article/details/6559338 http://blog.csdn.net/xiazdong/article/details/7687439 http://www.cnblogs.com/feisky/archive/2011/01/05/1926177.html 1.文件存储数据使用了Java中的IO操作来进行文件的保存和读取,只不过Android在Context类中封装好了输入流和输出流的获取方

Android中的文件存储技术

文件存储是每个系统都应该具有的功能,Android系统采用Java语言开发,所以它的文件存储功能基本上和J2SE一样的.为什么会引入文件存储?因为大文件.图片等我们若只存储在手机中很有限,一般都是用一个外存储设备进行存储.好了今天我们就讲讲用编程的方式在Android系统中进行存储. 文件存储的位置 一般文件默认存储在/data/data/<包>/files/***.***(针对我们开发的APK的时候),当然我们也可以存储在存储卡上(这个时候需要在androidManifest.xml 设定文

Android中的文件读写总结

在Android中,文件主要分为两大类,内部存储和外部存储 内部存储的文件是程序私有的,分为普通文件和Cache文件 外部文件也可以是私有的,也可以是共有的,这要根据文件的目录位置来决定 共有文件可以用JAVA的文件处理方法来处理,但是内部文件必须用openfileinput或者openfileoutput来进行打开和关闭 在对SD卡上的文件进行操作之前需要先检查SD卡的状态(是否可读写,可访问等)

在android中读写文件

在android中读写文件 android中只有一个盘,正斜杠/代表根目录. 我们常见的SDK的位置为:/mnt/sdcard 两种最常见的数据存储方式: 一.内存 二.本地 1.手机内部存储 2.外部存储设备(SD卡) 在SD卡中读数据是不需要权限的,但是在SD卡中写数据是要权限的: <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 读写文件的方式就是用的Java的文件

67.Android中的数据存储总结

转载:http://mp.weixin.qq.com/s?__biz=MzIzMjE1Njg4Mw==&mid=2650117688&idx=1&sn=d6c73f9f04d02ede7a741b45e801d74e#rd 本篇文章会帮助大家快速了解Android中各种数据存储机制的应用场景以及基本使用方法,力求在头脑中建立一个“目录”.有了这个目录,具体使用细节在实际应用时再查询文档即可得到. 0. 概述 Android为我们提供了以下存储机制: Shared Preferenc

Android笔记——Android中数据的存储方式(二)

我们在实际开发中,有的时候需要储存或者备份比较复杂的数据.这些数据的特点是,内容多.结构大,比如短信备份等.我们知道SharedPreferences和Files(文本文件)储存这种数据会非常的没有效率.如果学过JavaWeb的朋友,首先可能想到的是数据库.当然了数据库是一个方案,那么是否还有其他的解决方案呢?今天我们在讲下Android笔记——Android中数据的存储方式(一) 提到的除了SharedPreferences和Files(文本文件)以外的其他几种数据储存方式:xml文件.SQL

Android中的File存储

关于Android的File存储,这里先说下Java中的File类,根据面向对象的思想,Java中对文件的操作也进行了对象的封装,这个操作文件的类就是File类,File提供了丰富的api来进行文件的操作,比如常见的createNewFile(),mkdir(),mkdirs(),exists(),isFile(),isDictory(),renameto(),delete(),getName(),getPath()....方法比较多,读者可以自行通过api文档查看,同样这一套的文件操作在And

Android中的数据存储

Android中的数据存储主要分为三种基本方法: 1.利用shared preferences存储一些轻量级的键值对数据. 2.传统文件系统. 3.利用SQLite的数据库管理系统. 对SharedPreferences对象和SQLite数据库,它们的数据仅对创建它们的应用是可访问的. (比如,MODE_WORLD_READABLE 和 MODE_WORLD_WRITEABLE现在(since API 17)已经被标记为deprecated). 换句话说,它们不是共享的,如果需要在不同的应用之间