Android从文件目录中写入和读取图片

要将文件写入储存,首先有在配置文件中去设置权限:

 <span style="white-space:pre">	</span><uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
  	<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>  <!-- 外部储存可写 -->
  	<uses-permission android:name="android.permission.READ_CONTACTS"/>  


将图片文件写入指定目录:

/*
	 * 访问外部储存私有区域
	 * 路径为   getExternalFilesDir()       /mnt/sdcard/Android/data/com.example.call/files
	 * 		getExternalCacheDir()    /mnt/sdcard/Android/data/com.example.call/cache
	 */
	public void writeFileToExternalPrivate(){
		String fileDir = getContext().getExternalFilesDir(Environment.DIRECTORY_MUSIC).getAbsolutePath();
		Log.v("test", fileDir);
		
		String cacheDir = getContext().getExternalCacheDir().getAbsolutePath();
		File mapFile = new File(cacheDir+File.separator+"map");   //再将图片加载到目录之前先创建
		Mylog.d("00000000"+mapFile.mkdir());
		Bitmap bitmap = BitmapFactory.decodeResource(getContext().getResources(), R.drawable.img_person);
		File file = new File(cacheDir+File.separator+"map","2.png");  //将图片保存到刚创建好的目录下
		
		try {
			FileOutputStream out = new FileOutputStream(file);
			bitmap.compress(Bitmap.CompressFormat.PNG, 100, out);
			out.close();
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		Log.v("test", cacheDir);
	}


从指定目录中读取文件:


<span style="white-space:pre">	</span>public void readImgFromFile(){
		Bitmap bitmap = BitmapFactory.decodeFile(getContext().getExternalCacheDir().getAbsolutePath()+
				File.separator+"map"+File.separator+"2.png");
		String cacheDir = getContext().getExternalCacheDir().getAbsolutePath();
		File file = new File(cacheDir+File.separator+"map","3.png");  //将图片保存到刚创建好的目录下
		
		try {
			FileOutputStream out = new FileOutputStream(file);
			bitmap.compress(Bitmap.CompressFormat.PNG, 100, out);
			out.close();
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}






版权声明:本文为Tom_xiaoxie原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。