android数据写入

来源:互联网 发布:怎么修改淘宝号地区 编辑:程序博客网 时间:2024/06/03 03:39

完成效果:在文本框中输入数字或文字,点击保存按钮然后再按读取按钮,输入内容显示到按钮下方。

                    在res下新建raw文件,点击读取raw按钮,输入内容显示到按钮下方。

                    新建一个assets,点击读取assets按钮,输入内容显示到按钮下方。

                    点击删除按钮,删除输入内容。

布局1:

完成效果:在文本框中输入数字或文字,点击保存按钮然后再按读取按钮,输入内容显示到按钮下方。

                    在res下新建raw文件,点击读取raw按钮,输入内容显示到按钮下方。

                    新建一个assets,点击读取assets按钮,输入内容显示到按钮下方。

                    点击删除按钮,删除输入内容。

布局1:

[html] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     xmlns:tools="http://schemas.android.com/tools"  
  4.     android:layout_width="match_parent"  
  5.     android:layout_height="match_parent"  
  6.     tools:context="com.example.administrator.jreduch09.InnerIOActivity">  
  7. <EditText  
  8.     android:layout_width="match_parent"  
  9.     android:layout_height="wrap_content"  
  10.     android:hint="请输入内容"  
  11.     android:id="@+id/content"  
  12.     />  
  13.     <Button  
  14.         android:layout_width="wrap_content"  
  15.         android:layout_height="wrap_content"  
  16.         android:text="保存"  
  17.         android:id="@+id/save"  
  18.         android:layout_below="@+id/content"  
  19.         android:layout_alignParentEnd="true" />  
  20.     <Button  
  21.         android:layout_width="wrap_content"  
  22.         android:layout_height="wrap_content"  
  23.         android:text="读取"  
  24.         android:id="@+id/read"  
  25.         android:layout_below="@+id/content"  
  26.         android:layout_alignParentStart="true" />  
  27.     <TextView  
  28.         android:layout_width="match_parent"  
  29.         android:layout_height="50dp"  
  30.         android:layout_below="@+id/read"  
  31.         android:id="@+id/show"  
  32.         />  
  33.     <Button  
  34.         android:layout_width="wrap_content"  
  35.         android:layout_height="wrap_content"  
  36.         android:id="@+id/delete"  
  37.         android:text="删除"  
  38.         android:layout_below="@+id/content"  
  39.         android:layout_centerHorizontal="true" />  
  40. </RelativeLayout>  
代码:

[html] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. package com.example.administrator.jreduch09;  
  2.   
  3. import android.os.Bundle;  
  4. import android.os.Environment;  
  5. import android.support.v7.app.AppCompatActivity;  
  6. import android.util.Log;  
  7. import android.view.View;  
  8. import android.widget.Button;  
  9. import android.widget.EditText;  
  10. import android.widget.TextView;  
  11. import android.widget.Toast;  
  12. import java.io.BufferedReader;  
  13. import java.io.File;  
  14. import java.io.FileInputStream;  
  15. import java.io.FileNotFoundException;  
  16. import java.io.FileOutputStream;  
  17. import java.io.IOException;  
  18. import java.io.InputStreamReader;  
  19.   
  20. public class SaveToSdCardActivity extends AppCompatActivity {  
  21.     private Button save,read,delete;  
  22.     private EditText content;  
  23.     private TextView show;  
  24.     @Override  
  25.     protected void onCreate(Bundle savedInstanceState) {  
  26.         super.onCreate(savedInstanceState);  
  27.         setContentView(R.layout.activity_inner_io);  
  28.          save= (Button) findViewById(R.id.save);  
  29.          read= (Button) findViewById(R.id.read);  
  30.          delete= (Button) findViewById(R.id.delete);  
  31.          show= (TextView) findViewById(R.id.show);  
  32.          content = (EditText) findViewById(R.id.content);  
  33.          save.setOnClickListener(new View.OnClickListener() {  
  34.             @Override  
  35.             public void onClick(View v) {  
  36.             saveFile();  
  37.             }  
  38.         });  
  39.          read.setOnClickListener(new View.OnClickListener() {  
  40.             @Override  
  41.             public void onClick(View v) {  
  42.                show.setText(readFile());  
  43.             }  
  44.         });  
  45.          delete.setOnClickListener(new View.OnClickListener() {  
  46.             @Override  
  47.             public void onClick(View v) {  
  48.                 removeFile();  
  49.             }  
  50.         });  
  51.     }  
  52.     //保存文件到SDcard中  
  53.     public void saveFile(){  
  54.         FileOutputStream fos=null;  
  55.         String stateEnvironment.getExternalStorageState();  
  56.         //获取SD卡状态  
  57.         if(!state.equals(Environment.MEDIA_MOUNTED)){  
  58.             //判断SD卡是否就绪  
  59.             Toast.makeText(getBaseContext(),"请检查SD卡",Toast.LENGTH_SHORT).show();  
  60.             return;  
  61.         }  
  62.          File file=Environment.getExternalStorageDirectory();  
  63.         //取得SD卡根目录  
  64.         try {  
  65.             Log.d("===SD卡根目录:",file.getCanonicalPath()+"sd.txt");  
  66.             fos=new FileOutputStream(file.getCanonicalPath()+"/sd.txt",true);  
  67.             String str=content.getText().toString();  
  68.             fos.write(str.getBytes());  
  69.             Toast.makeText(getBaseContext(),"保存成功",Toast.LENGTH_SHORT).show();  
  70.         } catch (IOException e) {  
  71.             e.printStackTrace();  
  72.         }finally {  
  73.             if(fos!=null){  
  74.                 try {  
  75.                     fos.close();  
  76.                 } catch (IOException e) {  
  77.                     e.printStackTrace();  
  78.                 }  
  79.             }  
  80.         }  
  81.     }  
  82.     public String readFile(){  
  83.         BufferedReader reader =null;  
  84.         FileInputStream fis=null;  
  85.         //从SD卡读取文件  
  86.         StringBuilder sdb=new StringBuilder();  
  87.         String state=Environment.getExternalStorageState();  
  88.         if(!state.equals(Environment.MEDIA_MOUNTED)){  
  89.             Toast.makeText(getBaseContext(),"SD卡未就绪",Toast.LENGTH_SHORT).show();  
  90.             return "";  
  91.         }  
  92.         File root=Environment.getExternalStorageDirectory();  
  93.         try {  
  94.             fis=new FileInputStream(root+"/sd.txt");  
  95.             reader=new BufferedReader(new InputStreamReader(fis));  
  96.             String row="";  
  97.             while ((row=reader.readLine())!=null){  
  98.                 sdb.append(row);  
  99.             }  
  100.         } catch (FileNotFoundException e) {  
  101.             Toast.makeText(this,"文件不存在",Toast.LENGTH_SHORT).show();  
  102.             e.printStackTrace();  
  103.         } catch (IOException e) {  
  104.             e.printStackTrace();  
  105.         }finally {  
  106.             if(reader!=null){  
  107.                 try {  
  108.                     reader.close();  
  109.                 } catch (IOException e) {  
  110.                     e.printStackTrace();  
  111.                 }  
  112.             }  
  113.         }  
  114.         return sdb.toString();  
  115.     }  
  116.     public void removeFile(){  
  117.         String state=Environment.getExternalStorageState();  
  118.         if(!state.equals(Environment.MEDIA_MOUNTED)){  
  119.             Toast.makeText(getBaseContext(),"SD卡未就绪",Toast.LENGTH_SHORT).show();  
  120.             return;  
  121.         }  
  122.         File file=Environment.getExternalStorageDirectory();  
  123.         File myFile=new File(file,"sd.txt");  
  124.         if(myFile.exists()){  
  125.             myFile.delete();  
  126.             Toast.makeText(this,"文件已删除",Toast.LENGTH_SHORT).show();  
  127.         }else{  
  128.             Toast.makeText(this,"文件不存在",Toast.LENGTH_SHORT).show();  
  129.         }  
  130.     }  
  131. }  
效果展示:


布局2:

[html] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     xmlns:tools="http://schemas.android.com/tools"  
  4.     android:layout_width="match_parent"  
  5.     android:layout_height="match_parent"  
  6.     tools:context="com.example.administrator.jreduch09.ReadRawAndAssetsActivity">  
  7. <Button  
  8.     android:layout_width="wrap_content"  
  9.     android:layout_height="wrap_content"  
  10.     android:id="@+id/raw"  
  11.     android:text="读取raw"  
  12.     />  
  13.     <Button  
  14.         android:layout_width="wrap_content"  
  15.         android:layout_height="wrap_content"  
  16.         android:id="@+id/assets"  
  17.         android:text="读取assets"  
  18.         android:layout_alignParentTop="true"  
  19.         android:layout_alignParentEnd="true" />  
  20.     <TextView  
  21.         android:layout_width="match_parent"  
  22.         android:layout_height="50dp"  
  23.         android:id="@+id/show"  
  24.         android:layout_below="@+id/assets"  
  25.         />  
  26. </RelativeLayout>  
代码:
[html] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. package com.example.administrator.jreduch09;  
  2.   
  3. import android.support.v7.app.AppCompatActivity;  
  4. import android.os.Bundle;  
  5. import android.view.View;  
  6. import android.widget.Button;  
  7. import android.widget.TextView;  
  8. import java.io.BufferedReader;  
  9. import java.io.IOException;  
  10. import java.io.InputStream;  
  11. import java.io.InputStreamReader;  
  12.   
  13. public class ReadRawAndAssetsActivity extends AppCompatActivity {  
  14.     private TextView show;  
  15.     private Button raw,assets;  
  16.     @Override  
  17.     protected void onCreate(Bundle savedInstanceState) {  
  18.         super.onCreate(savedInstanceState);  
  19.         setContentView(R.layout.activity_read_raw_and_assets);  
  20.         raw= (Button) findViewById(R.id.raw);  
  21.         assets= (Button) findViewById(R.id.assets);  
  22.         show= (TextView) findViewById(R.id.show);  
  23.         raw.setOnClickListener(new View.OnClickListener() {  
  24.             @Override  
  25.             public void onClick(View v) {  
  26.                show.setText(readRaw());  
  27.             }  
  28.         });  
  29.         assets.setOnClickListener(new View.OnClickListener() {  
  30.             @Override  
  31.             public void onClick(View v) {  
  32.                 show.setText(readAssets());  
  33.             }  
  34.         });  
  35.     }  
  36.     public String readRaw(){  
  37.         StringBuilder sbd=new StringBuilder();  
  38.         InputStream is=null;  
  39.         BufferedReader reader=null;  
  40.         is=getResources().openRawResource(R.raw.settings);  
  41.         String row="";  
  42.         try {  
  43.             reader=new BufferedReader(new InputStreamReader(is));  
  44.             while ((row=reader.readLine())!=null) {  
  45.                 sbd.append(row);  
  46.             }  
  47.         } catch (IOException e) {  
  48.             e.printStackTrace();  
  49.         }finally {  
  50.             if(reader!=null){  
  51.                 try {  
  52.                     reader.close();  
  53.                 } catch (IOException e) {  
  54.                     e.printStackTrace();  
  55.                 }  
  56.             }  
  57.         }  
  58.         return sbd.toString();  
  59.     }  
  60.     public String readAssets(){  
  61.         StringBuilder sdb=new StringBuilder();  
  62.         BufferedReader reader=null;  
  63.         try {  
  64.             InputStream is=getResources().getAssets().open("city");  
  65.             reader=new BufferedReader(new InputStreamReader(is));  
  66.             String row="";  
  67.             while ((row=reader.readLine())!=null){  
  68.                 sdb.append(row);  
  69.             }  
  70.         } catch (IOException e) {  
  71.             e.printStackTrace();  
  72.         }finally {  
  73.             if(reader!=null){  
  74.                 try {  
  75.                     reader.close();  
  76.                 } catch (IOException e) {  
  77.   
  78.                 }  
  79.             }  
  80.         }  
  81.         return sdb.toString();  
  82.     }  
  83. }  
settings中的内容:

1.大家好我是VAE2.那是一条神奇的天路啊啊啊。3.我愿意为你,我愿意为你。4.如果你对天空向往。
assets中的city的内容:

北京上海广州
效果展示:

原创粉丝点击