package com.example.day09_sdsave;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.os.Bundle;
import android.os.Environment;
import android.text.format.Formatter;
import android.view.View;
import android.widget.Toast;
@SuppressLint("NewApi")
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 获取SD卡挂载状态
String state = Environment.getExternalStorageState();
// 如果是挂载状态(存储媒体已经挂载,并且挂载点可读/写)
if (Environment.MEDIA_MOUNTED.equals(state)) {
System.out.println("可以进行文件读取");
// 参数一:文件路径,参数二:文件名
// Environment.getExternalStorageDirectory()获取SD根路径
System.out.println("SD根路径:"
+ Environment.getExternalStorageDirectory());
File file = new File(Environment.getExternalStorageDirectory(),
"1409a.txt");
try {
// 通过输出流写出
FileOutputStream fileOutputStream = new FileOutputStream(file,
true);
// 写入文件内容
fileOutputStream.write("aaaa".getBytes());
// 刷新
fileOutputStream.flush();
// 关流
fileOutputStream.close();
} catch (FileNotFoundException e) {
System.out.println("文件路径找不到");
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// 如果不是挂载状态
} else if (Environment.MEDIA_UNMOUNTED.equals(state)) {
System.out.println("不可以进行文件读取");
}
}
//读取sd卡数据
public void inPut(View v){
File file=new File(Environment.getExternalStorageDirectory(), "/1409a.txt");
try {
FileInputStream inputStream=new FileInputStream(file);
byte[] b=new byte[1024];
int i;//记录读了多少数据
while ((i=inputStream.read(b))!=-1) {
// System.out.println(b.toString());
System.out.println( new String(b, 0, i));
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
// 获取存储空间大小
@SuppressLint("NewApi")
public void size(View v) {
//获取内部存储空间
File dataDirectory = Environment.getDataDirectory();
//获取外部存储空间
File file = Environment.getExternalStorageDirectory();
long totalSpace = file.getTotalSpace();//得到指定路径的存储空间大小//外部
long dataSpace = dataDirectory.getTotalSpace();//得到指定路径的存储空间大小//内部存储空间
String size = Formatter.formatFileSize(this, totalSpace);//格式化字节//外部
String dataSize = Formatter.formatFileSize(this, dataSpace);//格式化字节//内部存储空间
Toast.makeText(this, " 外部存储空间: "+size+"内部存储空间:" +dataSize, 1).show();
}
}
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.os.Bundle;
import android.os.Environment;
import android.text.format.Formatter;
import android.view.View;
import android.widget.Toast;
@SuppressLint("NewApi")
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 获取SD卡挂载状态
String state = Environment.getExternalStorageState();
// 如果是挂载状态(存储媒体已经挂载,并且挂载点可读/写)
if (Environment.MEDIA_MOUNTED.equals(state)) {
System.out.println("可以进行文件读取");
// 参数一:文件路径,参数二:文件名
// Environment.getExternalStorageDirectory()获取SD根路径
System.out.println("SD根路径:"
+ Environment.getExternalStorageDirectory());
File file = new File(Environment.getExternalStorageDirectory(),
"1409a.txt");
try {
// 通过输出流写出
FileOutputStream fileOutputStream = new FileOutputStream(file,
true);
// 写入文件内容
fileOutputStream.write("aaaa".getBytes());
// 刷新
fileOutputStream.flush();
// 关流
fileOutputStream.close();
} catch (FileNotFoundException e) {
System.out.println("文件路径找不到");
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// 如果不是挂载状态
} else if (Environment.MEDIA_UNMOUNTED.equals(state)) {
System.out.println("不可以进行文件读取");
}
}
//读取sd卡数据
public void inPut(View v){
File file=new File(Environment.getExternalStorageDirectory(), "/1409a.txt");
try {
FileInputStream inputStream=new FileInputStream(file);
byte[] b=new byte[1024];
int i;//记录读了多少数据
while ((i=inputStream.read(b))!=-1) {
// System.out.println(b.toString());
System.out.println( new String(b, 0, i));
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
// 获取存储空间大小
@SuppressLint("NewApi")
public void size(View v) {
//获取内部存储空间
File dataDirectory = Environment.getDataDirectory();
//获取外部存储空间
File file = Environment.getExternalStorageDirectory();
long totalSpace = file.getTotalSpace();//得到指定路径的存储空间大小//外部
long dataSpace = dataDirectory.getTotalSpace();//得到指定路径的存储空间大小//内部存储空间
String size = Formatter.formatFileSize(this, totalSpace);//格式化字节//外部
String dataSize = Formatter.formatFileSize(this, dataSpace);//格式化字节//内部存储空间
Toast.makeText(this, " 外部存储空间: "+size+"内部存储空间:" +dataSize, 1).show();
}
}