电话: android.permission.
CALL_PHONE
短信: android.permission.
SEND_SMS
写SD卡: android.permission.
WRITE_EXTERNAL_STORAGE
读SD卡:
android.permission.
READ_EXTERNAL_STORAGE
//存储到SD卡中
context.openFileOutput(
"info.dat"
, context.
MODE_PRIVATE
);
fos.write((userName+
"##"
+passWord).getBytes());
fos.close();
//读取SD卡
FileInputStream fis = context.openFileInput(
"info.dat"
);
BufferedReade
bufr=
new
BufferedReader(
new
InputStreamReader(fis));
String line=bufr.readLine();
String userName=line.split(
"##"
)[0];
String passWord=line.split(
"##"
)[1];
----------------------------------------------------------------------------------------------------------
计算手机可用空间:
public
class
MainActivity
extends
Activity {
private
TextView
tv
;
@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)){
Toast. makeText(getApplicationContext(),
"SD卡不存在"
, 0).show();
return
;
}
tv
= (TextView) findViewById(R.id.
tv
);
tv
.setText(
"SD卡的可用空间:"
+getAvailSDSize()+
"\n"
+
"手机内存空间:"
+getAvailROMSize());
}
/**
* 获取SD卡可用空间
*
*/
public
String getAvailSDSize(){
File path=Environment. getExternalStorageDirectory();
//得到SD卡目录
StatFs stat=
new
StatFs(path.getPath());
//得到SD卡目录对应路径
long
blockSize=stat.getBlockSize();
long
availableBlocks=stat.getAvailableBlocks();
long
totalSize=blockSize*availableBlocks;
//byte
return
Formatter. formatFileSize(
this
, totalSize);
}
/**
*
* 获取手机内部存数(ROM)可用空间
*/
public
String getAvailROMSize(){
File path=Environment. getDataDirectory();
//得到手机内存目录
StatFs stat=
new
StatFs(path.getPath());
//得到
手机内存目录
对应路径
long
blockSize=stat.getBlockSize();
long
availableBlocks=stat.getAvailableBlocks();
long
totalSize=blockSize*availableBlocks;
//byte
return
Formatter. formatFileSize(
this
, totalSize);
}
}
---------------------------------------------------------------------
/**
* 获取某个目录的大小
*
@param
path
*
@return
*/
public
String getAvailableSpace(String path){
StatFs statf =
new
StatFs(path);
long
size = statf. getAvailableBlocks()*statf. getBlockSize();
return
Formatter.formatFileSize(
this
, size);
}