获取sdcard和内存的存储空间

时间:2023-03-09 14:41:39
获取sdcard和内存的存储空间
 package com.example.sdcardspace;

 import java.io.File;

 import android.os.Bundle;
import android.os.Environment;
import android.os.StatFs;
import android.app.Activity;
import android.text.format.Formatter;
import android.view.Menu;
import android.widget.TextView; public class MainActivity extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView tv = (TextView)findViewById(R.id.tv); File path = Environment.getExternalStorageDirectory();
StatFs stat = new StatFs(path.getPath());
long blockSize = stat.getBlockSize();
long totalBlocks = stat.getBlockCount();
long availblocks = stat.getAvailableBlocks();
long totalSize = blockSize * totalBlocks;
long availSize = blockSize * availblocks;
String totalStr = Formatter.formatFileSize(this, totalSize);
String availStr = Formatter.formatFileSize(this, availSize); tv.setText("总空间为: " + totalStr + "\n可用空间为: " + availStr + "\n" + getMonmery()); } public String getMonmery()
{
File path = Environment.getDataDirectory();
StatFs stat = new StatFs(path.getPath());
long blockSize = stat.getBlockSize();
long totalBlocks = stat.getBlockCount();
long availblocks = stat.getAvailableBlocks();
long totalSize = blockSize * totalBlocks;
long availSize = blockSize * availblocks;
String totalStr = Formatter.formatFileSize(this, totalSize);
String availStr = Formatter.formatFileSize(this, availSize);
return "内存块的总容量为: " + totalStr + "\n可用空间为: " + availStr;
} }