Android 가 drawable 디 렉 터 리 그림 을 가 져 오고 지정 한 파일 을 저장 하 는 절차 에 대한 자세 한 설명

첫 번 째 단계:저 장 된 경 로 를 가 져 오 려 면/sdcard/Android/data/가방 이름/경 로 를 사용 하여 테스트 할 수 있 습 니 다.

 String path=MyApplication.getContextObject().getExternalFilesDir("").toString();
 File file=new File(path);
두 번 째 단계:이 파일 에 저 장 된 경로 정보 에 따라 파일 시스템 에 새 빈 파일 을 만 듭 니 다.

File finalImageFile = new File(file, System.currentTimeMillis() + ".jpg");
 try {
   finalImageFile.createNewFile();
 } catch (IOException e) {
   e.printStackTrace();
 }
세 번 째 단계:파일 출력 흐름 에 바이트 넣 기

FileOutputStream fos = null;
 try {
   fos = new FileOutputStream(finalImageFile);
 } catch (FileNotFoundException e) {
   e.printStackTrace();
 }
STEP 4:그림 을 그림 형식 으로 압축 합 니 다.

 BitmapDrawable bitmapDrawable = (BitmapDrawable)MyApplication.getContextObject().getResources().getDrawable(R.drawable.account);
 Bitmap bitmap=bitmapDrawable.getBitmap();
 if (bitmap == null) {
   Toast.makeText(MyApplication.getContextObject(), "     ",Toast.LENGTH_LONG).show();
   return;
 }
 bitmap.compress(Bitmap.CompressFormat.PNG, 100, fos);
 try {
   fos.flush();
   fos.close();
   Toast.makeText(MyApplication.getContextObject(), "     :"+ finalImageFile.getAbsolutePath(), Toast.LENGTH_LONG).show();
 } catch (IOException e) {
   e.printStackTrace();
 }
전체 코드

 String path=MyApplication.getContextObject().getExternalFilesDir("").toString();
 File file=new File(path);
 
 File finalImageFile = new File(file, System.currentTimeMillis() + ".jpg");
 try {
   finalImageFile.createNewFile();
 } catch (IOException e) {
   e.printStackTrace();
 }
 
 FileOutputStream fos = null;
 try {
   fos = new FileOutputStream(finalImageFile);
 } catch (FileNotFoundException e) {
   e.printStackTrace();
 }
 
 BitmapDrawable bitmapDrawable = (BitmapDrawable)MyApplication.getContextObject().getResources().getDrawable(R.drawable.account);
 Bitmap bitmap=bitmapDrawable.getBitmap();
 if (bitmap == null) {
   Toast.makeText(MyApplication.getContextObject(), "     ",Toast.LENGTH_LONG).show();
   return;
 }
 bitmap.compress(Bitmap.CompressFormat.PNG, 100, fos);
 try {
   fos.flush();
   fos.close();
   Toast.makeText(MyApplication.getContextObject(), "     :"+ finalImageFile.getAbsolutePath(), Toast.LENGTH_LONG).show();
 } catch (IOException e) {
   e.printStackTrace();
 }
총결산
안 드 로 이 드 가 drawable 디 렉 터 리 그림 을 가 져 오고 지정 한 파일 을 저장 하 는 것 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 안 드 로 이 드 디 렉 터 리 그림 을 지정 한 파일 내용 에 저장 하 는 것 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 지원 바 랍 니 다!

좋은 웹페이지 즐겨찾기