实验 将内容存储在内存卡中
来源:互联网 发布:网络诋毁公司如何处理 编辑:程序博客网 时间:2024/05/02 02:28
一.实验代码
package com.example.test1102;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import android.app.Activity;import android.content.Context;import android.os.Bundle;import android.os.Environment;import android.text.TextUtils;import android.view.Menu;import android.widget.EditText;import android.widget.Toast;public class MainActivity extends Activity{ private EditText edit;@Overrideprotected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);edit = (EditText) findViewById(R.id.edit);String inputText=load();if (!TextUtils.isEmpty(inputText)) {edit.setText(inputText);edit.setSelection(inputText.length());Toast.makeText(this, "Restoring succeeded", Toast.LENGTH_SHORT).show();} if(isHavedSDcard()){ try { writeStr2SDCard(inputText); } catch (Exception e) { e.printStackTrace(); } } else{ showToast("您的手机没有内存卡哦!"); } } public boolean isHavedSDcard() { if (Environment.getExternalStorageState().equals( Environment.MEDIA_MOUNTED)) return true; else return false; } public String getRootPath() { return Environment.getExternalStorageDirectory().toString(); } public void showToast(String text) { Toast.makeText(this, text, Toast.LENGTH_SHORT).show(); } private void writeStr2SDCard(String str) throws Exception{ FileOutputStream fos = new FileOutputStream(getRootPath()+"/test.txt"); fos.write(str.getBytes()); }@Overrideprotected void onDestroy(){// TODO Auto-generated method stubsuper.onDestroy();String inputText = edit.getText().toString();save(inputText);}private void save(String inputText){// TODO Auto-generated method stubFileOutputStream out = null;BufferedWriter writer = null;try {out = openFileOutput("data", Context.MODE_PRIVATE);writer = new BufferedWriter(new OutputStreamWriter(out));writer.write(inputText);} catch (IOException e) {e.printStackTrace();} finally {try {if (writer != null) {writer.close();}} catch (IOException e) {e.printStackTrace();}}}public String load() {FileInputStream in = null;BufferedReader reader = null;StringBuilder content = new StringBuilder();try {in = openFileInput("data");reader = new BufferedReader(new InputStreamReader(in));String line = "";while ((line = reader.readLine()) != null) {content.append(line);}} catch (IOException e) {e.printStackTrace();} finally {if (reader != null) {try {reader.close();} catch (IOException e) {e.printStackTrace();}}}return content.toString();}@Overridepublic boolean onCreateOptionsMenu(Menu menu){// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}二 实验心得
首先要检测手机中是否有内存卡,如果不存在则给出提示,存在则新建test.txt,将内容存在文件中。在AndroidManifest.xml中要有注册,添加<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>代码。
0 0
- 实验 将内容存储在内存卡中
- 将图片存储在内存中
- 将一个字符串的内容,逆序存储
- 实验任务6 将数据存储在sd卡中
- 实验内容
- 当用java程序去频繁读取大文件的时候将读取到的内容放在内存中
- 负数在内存中的存储
- 数据在内存中的存储
- float在内存中存储
- float在内存存储格式
- 数据在内存中的存储
- 对象在内存中的存储
- 数组在内存中的存储
- 字符串在内存中的存储
- 变量在内存中的存储
- 程序在内存中的存储
- 对象在内存中的存储
- 数据在内存中的存储
- Redis-Redis简介
- 中国商圈数据,中国行政区数据,省,市,区县,商圈【全国地域数据】【Json格式】
- MSSQL第二篇:非AD环境搭建AlwaysOn
- 第11周项目1-验证算法(2)二叉树构造算法的验证
- 数据库编程
- 实验 将内容存储在内存卡中
- Android 并发二三事之利用CountDownLatch 或 ConditionVariable实现自定义Future
- Java String对象的经典问题(new String())
- web前端开发中防治重复提交
- Linux常见命令问答
- eclipse快捷键用法
- 时间、日期的常识
- 使用npm安装一些包失败了的看过来(npm国内镜像介绍),亲测可用,非常吊!
- 【FontsManager】安卓一行代码实现自定义字体替换