向sd卡写文件
2014-05-09 10:35
344 查看
activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <EditText android:id="@+id/numET" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="请输入文件名" /> <EditText android:id="@+id/contentET" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="请输入文件内容" android:inputType="textMultiLine" android:minLines="3" /> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" > <Button android:id="@+id/sdcBT" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="保存到sd卡" android:onClick="onClick" /> <Button android:id="@+id/romBT" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="保存到手机" android:onClick="onClick" /> </LinearLayout> </LinearLayout>
MainActivity.java
package com.example.writeintosdcard; import android.os.Bundle; import android.os.Environment; import android.app.Activity; import android.view.Menu; import android.view.View; import android.widget.EditText; import android.widget.Toast; public class MainActivity extends Activity { private EditText numET;// 文件名 private EditText contentET;// 文件内容3行 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); numET = (EditText) findViewById(R.id.numET); contentET = (EditText) findViewById(R.id.contentET); } @Override protected void onResume() { super.onResume(); // Environment.getExternalStorageState().获取sd卡的状态,根据sd卡是否挂载判断是安装,还是移除 findViewById(R.id.sdcBT).setEnabled( Environment.getExternalStorageState().equals( Environment.MEDIA_MOUNTED)); } @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; } public void onClick(View v) { try { String name = numET.getText().toString(); String content = contentET.getText().toString(); FileService service = new FileService(); switch (v.getId()) { case R.id.sdcBT://保存到sd卡 service.saveToSDCard(name, content); break; case R.id.romBT://保存到手机 service.saveToRom(name, content);//保存到手机什么也执行 break; } Toast.makeText(getApplicationContext(), "保存成功", Toast.LENGTH_SHORT).show(); } catch (Exception e) { e.printStackTrace(); Toast.makeText(getApplication(), "SDcard出异常", Toast.LENGTH_SHORT).show(); } } }
FileService.java
package com.example.writeintosdcard; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import android.os.Environment; public class FileService { public void saveToSDCard(String name, String content) { FileOutputStream fos = null; try { // Environment.getExternalStorageDirectory()。获取sd卡的路径 File file = new File(Environment.getExternalStorageDirectory(),name); fos = new FileOutputStream(file); fos.write(content.getBytes()); } catch (Exception e) { e.printStackTrace(); } finally { try { fos.close(); } catch (IOException e) { e.printStackTrace(); } } } public void saveToRom(String name, String content) { // TODO Auto-generated method stub } }
相关文章推荐
- android在SD卡不同目录下获取文件
- 获取SD卡下Android/data/下文件
- android 解压ZIP文件到 SD卡 , 创建数据连接
- 用流把文件写入SD卡
- 文件存储权限和访问SD卡
- Linux平台从SD卡读文件并处理的方法
- Android获取SD卡上的APK文件
- SD卡相关总结及APP文件分类
- ok6410 SD卡烧写裸机程序(支持大文件烧写)
- android 保存TXT文件到SD卡方法
- 如何把字符串写入SD卡文件中,如何读取SD卡文件的数据
- android 读取SD卡下TXT文件
- SD卡挂载文件系统:VFS: Cannot open root device "mmcblk0p2"
- Android开发之SD卡上文件操作
- 靠谱的Android下载文件到SD卡的方法
- 最简单的SD卡文件遍历Android程序
- android保存文件到SD卡中
- 关于操作java中的SD卡文件的一些总结
- 如何在android模拟器上创建sd卡并向里面存入文件
- Android开发之下载Tomcat服务器的文件到模拟器的SD卡