带输入文本的提示框
final EditText fileName = new EditText(MainActivity.this);
new AlertDialog.Builder(MainActivity.this)
.setTitle("请输入文件名" )
.setIcon(android.R.drawable.ic_dialog_info)
.setView(fileName)
.setPositiveButton("确定" , new DialogInterface.OnClickListener() {//设置确定的按键
@SuppressLint("ShowToast")
@Override
public void onClick(DialogInterface dialog, int which) {
String strFileName = fileName.getText().toString();
String strExt = ".png";
String strFullName = strFileName + strExt;
saveBitmap(strFullName);
Toast.makeText(MainActivity.this, "文件保存在目录/mnt/sdcard/Effecttest/下", 1).show();
}
})
.setNegativeButton("取消" , null )
.show();
得到文件路径
Intent intent = new Intent();
intent.setType("file/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(intent, 1);
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK) {
Uri uri = data.getData();
Log.e("uri", uri.toString());
String strFile = uri.toString();
String subPath = strFile.substring(String.valueOf("file:///").length());
String strpath = "/" + subPath;
}
super.onActivityResult(requestCode, resultCode, data);
}
保存图片
@SuppressLint("SdCardPath")
public void saveBitmap(String picName) {
File f = new File("/mnt/sdcard/Effecttest/", picName);
if (f.exists()) {
f.delete();
}
try {
FileOutputStream out = new FileOutputStream(f);
showImg.compress(Bitmap.CompressFormat.PNG, 100, out); //showImg为Bitmap类型
out.flush();
out.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
AndroidManifest.xml增加读写SD卡权限
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.nxcgsvgparser"
android:versionCode="1"
android:versionName="1.0" >
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>