Android开发之从文件中读取数据
2016-03-09 09:57
417 查看
看这篇之前,看看上一篇文件存储
布局文件随意
package com.example.filepersistencetest; 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.os.Bundle; import android.app.Activity; import android.content.Context; import android.text.TextUtils; import android.view.Menu; import android.widget.EditText; import android.widget.Toast; public class MainActivity extends Activity { private EditText edit; protected 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(); } } @Override public 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; } protected void onDestroy(){ super.onDestroy(); String inputText=edit.getText().toString(); save(inputText); } public void save(String inputText) { FileOutputStream 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(); } }
布局文件随意
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <EditText android:id="@+id/edit" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="Type something here" /> </RelativeLayout>
相关文章推荐
- android:windowSoftInputMode属性详解
- Android设备间实现蓝牙共享上网
- android studio的常用快捷键
- android实现短信自动转发
- android自定义dialog嵌套listview自适应屏幕
- Android常用的第三方库整理
- Android编程实现根据不同日期计算天数差的方法
- Android 初学 往内存中写数据
- Android APK反编译就这么简单
- Android定时执行01
- android:强大的图片下载和缓存库Picasso
- Android开发之文件存储
- Android修改AlertDialog的背景颜色
- Android开发之RecyclerView的使用全解
- Android设备通过wifi连接adb调试
- Android Hook神器——XPosed入门(登陆劫持演示)
- 抓取Android应用的log
- 2016年3月9日Android实习日记
- Android上玩玩Hook?
- Android之Wifi开发---简单工具类