❶ android如何获取有图片的文件夹列表
循环递归方式目录一层一层的找这个文件夹有没有图片文件(扩展名为jpg.gif)。然后可以拿到这个文件夹了。小demo一窍不通其实这块没有什么啊你都可以做Android开发这块只是javaIO包里的内容LIstView你都了解我觉得这个你不是问题
❷ android怎么从sd卡指定的文件夹中获取所有图片的路径URL,谢谢~感谢各位大神了
直接调用文件管理器选择图片即可。1、调用系统提供的图片选择器,代码如下://注意,在.4系统下建议使用 Intent.ACTION_OPEN_DOCUMENT方式if (Utility.isKK()) {Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);intent.addCategory(Intent.CATEGORY_OPENABLE);intent.setType("imagepublic static String getDataColumn(Context context, Uri uri, String selection,String[] selectionArgs) {Cursor cursor = null;final String column = "_data";final String[] projection = {column};处理返回结果:protected void onActivityResult(int requestCode, int resultCode,Intent intent) {super.onActivityResult(requestCode, resultCode, intent);if (resultCode == RESULT_OK) {switch (requestCode) { case PIC_RESULT://选择图库 case PIC_RESULT_KK: imageFileUri = intent.getData();//获取选择图片的URI break;}}2、除此自外,系统还提供一种选择器,这个图片选择器可以屏蔽掉那个auto backup的目录.所以就开始打算用这个图片选择器来选图片了.Intent intent=new Intent(Intent.ACTION_GET_CONTENT);//ACTION_OPEN_DOCUMENTintent.addCategory(Intent.CATEGORY_OPENABLE);intent.setType("image/jpeg");if(android.os.Build.VERSION.SDK_INT>=android.os.Build.VERSION_CODES.KITKAT){startActivityForResult(intent, SELECT_PIC_KITKAT);}else{startActivityForResult(intent, SELECT_PIC);}为什么要分开不同版本呢?其实在4.3或以下可以直接用ACTION_GET_CONTENT的,在4.4或以上,官方建议用ACTION_OPEN_DOCUMENT,主要区别是他们返回的Uri.4.3返回的是带文件路径的,而4.4返回的却是content://com.android.providers.media.documents/document/image:3951这样的,没有路径,只有图片编号的uri.可以通过以下方式,处理URI。参考:Android 4.4从图库选择图片,获取图片路径并裁剪public static String getPath(final Context context, final Uri uri) {final boolean isKitKat = Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT;// DocumentProviderif (isKitKat && DocumentsContract.isDocumentUri(context, uri)) {// ExternalStorageProviderif (isExternalStorageDocument(uri)) {final String docId = DocumentsContract.getDocumentId(uri);final String[] split = docId.split(":");final String type = split[0];if ("primary".equalsIgnoreCase(type)) {return Environment.getExternalStorageDirectory() + "/" + split[1];}// TODO handle non-primary volumes}// DownloadsProviderelse if (isDownloadsDocument(uri)) {final String id = DocumentsContract.getDocumentId(uri);final Uri contentUri = ContentUris.withAppendedId(Uri.parse("content://downloads/public_downloads"), Long.valueOf(id));return getDataColumn(context, contentUri, null, null);}// MediaProviderelse if (isMediaDocument(uri)) {final String docId = DocumentsContract.getDocumentId(uri);final String[] split = docId.split(":");final String type = split[0];Uri contentUri = null;if ("image".equals(type)) {contentUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;} else if ("video".equals(type)) {contentUri = MediaStore.Video.Media.EXTERNAL_CONTENT_URI;} else if ("audio".equals(type)) {contentUri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;}final String selection = "_id=?";final String[] selectionArgs = new String[] {split[1]};return getDataColumn(context, contentUri, selection, selectionArgs);}}// MediaStore (and general)else if ("content".equalsIgnoreCase(uri.getScheme())) {// Return the remote addressif (isGooglePhotosUri(uri))return uri.getLastPathSegment();return getDataColumn(context, uri, null, null);}// Fileelse if ("file".equalsIgnoreCase(uri.getScheme())) {return uri.getPath();}return null;}public static String getDataColumn(Context context, Uri uri, String selection,String[] selectionArgs) {Cursor cursor = null;final String column = "_data";final String[] projection = {column};try {cursor = context.getContentResolver().query(uri, projection, selection, selectionArgs,null);if (cursor != null && cursor.moveToFirst()) {final int index = cursor.getColumnIndexOrThrow(column);return cursor.getString(index);}} finally {if (cursor != null)cursor.close();}return null;}public static boolean isExternalStorageDocument(Uri uri) {return "com.android.externalstorage.documents".equals(uri.getAuthority());}public static boolean isDownloadsDocument(Uri uri) {return "com.android.providers.downloads.documents".equals(uri.getAuthority());}public static boolean isMediaDocument(Uri uri) {return "com.android.providers.media.documents".equals(uri.getAuthority());}public static boolean isGooglePhotosUri(Uri uri) {return "com.google.android.apps.photos.content".equals(uri.getAuthority());}3、使用其它开源组件如PhotoView。
❸ android如何读取手机指定的某个文件夹下的所有图片的名称,语音名称
可以用javaIO读取图片文件,也可以用Android里面的mediastore先读取该文件夹下的图片缩略图用ListView或者gridView等控件显示缩略图点击后显示详细图片等方法,为了防止oom推荐第二种方法,不过不知道你那是怎样的需求,MediaStore的用法你可以网上搜下,一大堆的。
❹ 如何获得android手机拍照后照片的存放目录
一般安卓手机的相机功能都会有固定的存放路径,这个位置默认为:/sdcard/DCIM/100Andro或者/sdcard/DCIM/Camera,这里的sdcard是指手机中的SD卡,在电脑中显示的为可移动磁盘。根据不同品牌安卓手机的后期开发,文件夹名称可能不太一样,但一般是在DCIM目录文件夹里边,当然也会有特别,例如在酷派手机中手机拍照的图片是存放在根目录中的Photo中。首先,打开您手机上的相机,点击设置按钮,里面会有一个选择存储位置,一般默认是存储在手机内存,可以进行修改,存到SD卡中。通过数据线连接到电脑后,一般是一个叫DCIM。
❺ 安卓手机照片一般存在哪个文件夹
一般在存储在手机存储-DCIM-Camera下面
1、打开桌面上的文件管理器
(5)android获取图片文件夹扩展阅读:
截图生成的图片资源存储位置:手机存储-DCIM-ScreenShots文件夹下
由手机淘宝,美团生成的缓存图片存储位置:手机存储-Pictures
图片存储太多会占用很大内存空间,定期清理,可以便程序运行不卡顿,使用手机上手机管家之类的软件,定时清除缓存数据,手机那些上网浏览缓存下来的照片就会被删掉,也可以自己找出来删。
❻ android编程:读取指定文件夹下所有png图片
1、程序,把Assets中的图像显示出来try { BufferedInputStream bis = new BufferedInputStream(getAssets() .open("a.bmp")); Bitmap bm = BitmapFactory.decodeStream(bis); imageView01.setImageBitmap(bm); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); System.out.println("==========file not found======"); }2、原理:Android中的资源分析资源是Android应用程序中重要的组成部分。在应用程序中经常会使用字符串、菜单、图像、声音、视频等内容,都可以称之为资源。通过将资源放到与apk文件中与Android应用程序一同发布,在资源文件比较大的情况下,可以通过将资源作为外部文件来使用,我们将分析如何在Android应用程序中存储这些资源。一、资源的存储在android中,资源大多都是保存在res目录中,例如布局资源以XML文件的形式保存在res\layout目录中;图像资源保存着res\drawable目录中;菜单资源保存在res\menu目录中。ADT在生成apk文件时,这些目录中的资源都会被编译,然后保存到apk文件中。如果将资源文件放到res\raw目录中,资源将在不编译的情况下放入apk文件中。在程序运行时可以使用InputStream来读取res\raw目录中的资源。如果使用的资源文件过大,我们可以考虑将资源文件作为外部文件单独发布。Android应用程序会从手机内存或者SD卡读取这些资源文件。二、资源的种类从资源文件的类型来划分,我们可以将资源文件划分为XML、图像和其它。以XML文件形式存储的资源可以放在res目录中的不同子目录里,用来表示不同种类的资源;而图像资源会放在res\drawable目录中。除此之外,可以将任意的资源嵌入Androidy应用程序中。比如音频和视频等,一般这些资源放在res\raw目录中。表1、 Android支持的资源目录 资源类型 描述Res\values XML保存字符串、颜色、尺寸、类型、主题等资源,可以是任意文件名。对于字符串、颜色、尺寸等信息采用Key-value形式表示,对于类型、主题等资源,采用其它形式表示Res\layout XML保存布局信息。一个资源文件表示一个View或ViewGroup的布局Res\menu XML保存菜单资源。一个资源文件表示一个菜单(包括子菜单)Res\anim XML保存与动画相关的信息。可以定义帧(frame)动画和补间(tween)动画Res\xml XML在该目录的文件可以是任意类型的XML文件,这些XML文件可以在运行时被读取。Res\raw 任意类型在该目录中的文件虽然也会被封装在apk文件中,但不会被编译。在该目录中可以放置任意类型的文件,例如,各种类型的文档、音频、视频文件等Res\drawable 图像该目录中的文件可以是多种格式的图像文件,例如,bmp、png、gif、jpg等。在该目录中的图像不需要分辨率非常高,aapt工具会优化这个目录中的图像文件。如果想按字流读取该目录下的图像文件,需要将图像文件放在res\raw目录中。assets 任意类型该目录中的资源与res\raw中的资源一样,也不会被编译。但不同的是该目录中的资源文件都不会生出资源ID三、资源文件的命名每一个资源文件或资源文件中的key-value对都会在ADT自动生成的R类(在R.java文件中)中找到相对应的ID.其中资源文件名或key-value对中的key就是R类中的java变量名。因此,资源文件名好key的命名首先要符合java变量的命名规则。除了资源文件和key本身的命名要遵循相应的规则外,多个资源文件和key也要遵循唯一的原则。也就是说,同类资源的文件名或key不能重复。例如,两个表示字符串资源的key不能重复,就算这两个key在不同的XML文件中也不行。由于ADT在生成ID时并不考虑资源文件的扩展名,因此,在res\drawable、res\raw等目录中不能存在文件名相同,扩展名不同的资源文件。例如在res\drawable目录不能同时放置icon.jpg和icon.png文件。四、资源使用示例在Android SDK中不仅提供了大量的系统资源,而且还允许开发人员定制自己的资源。不管是系统资源,还是自定义的资源,一般都会将这些资源放在res目录中,然后通过R类中的相应ID来引用这些资源。接下来将针对于XML类资源的使用进行分析。XML资源实际上就是XML格式的文本文件,这些文件必须放在res\xml目录中。可以通过Resources.getXml方法获得处理指定XML文件的XmlResourceParser对象。实际上,XmlResourceParser对象处理XML文件的的过程主要是针对不同的状态点处理相应的代码,比如开始分析文档、开始分析标签、分析标签完成等,XmlResourceParser通过调用next方法不断更新当前的状态。下面的代码,则是展示如何读取res\xml目录中的XML文件的内容,先在res\xml目录中建立一个xml文件。将AndroidManifest.xml文件复制到res\xml目录中,并改名为android.xml。在准备完XML文件后,在onCreate方法中开始读取XML文件的内容,代码如下:public void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);TextView textView=(TextView)findViewById(R.id.textview);StringBuffer sb=new StringBuffer();// 获得处理android。xml文件的XmlResourceParser对象XmlResourceParser xml=getResources().getXml(R.xml.android);try{ //切换到下一个状态,并获得当前状态的类型 int eventType =xml.next(); while(true) { //文档开始状态 if(eventType == XmlPullParser.START_DOCUMENT) { Log.d("start_document","start_document"); } //标签开始状态 else if(eventType ==XmlPullParser.START_TAG) { Log.d("start_tag",xml.getName()); //将标签名称和当前标签的深度(根节点的depth是1,第2层节点的depth是2,类推) sb.append(xml.getName()+"(depth:"+xml.getDepth()" "); //获得当前标签的属性个数 int count=xml.getAttributeCount(); //将所有属性的名称和属性值添加到StringBuffer对象中 for(int i=0;i<count;i++) { sb.append(xml.getAttributeName(i)+": "+xml.getAttributeValue(i)+""); } sb.append(")\n"); } //标签结束状态 else if(eventType ==XmlPullParser.END_TAG) { Log.d("end_tag",xml.getName()); } //读取标签内容状态 else if(eventType ==XmlPullParser.TEXT) { Log.d("text","text"); } //文档结束状态 else if(eventType ==XmlPullParser.END_DOCUMENT) { Log.d("end_document","end_document"); //文档分析结束后,退出while循环 break; }//切换到下一个状态,并获得当前状态的类型 eventType =xml.next(); } textView.setText(sb.toString());} catch(Exception e) {} } 二、如果想读入文件在使用getAssets().open("anhui.xml")返回输人流之后,就可以以此为参数,后面的处理跟普通的java的处理相同。
❼ 安卓手机拍的相片在哪个文件夹下面
以华为荣耀20手机为例,手机拍摄完成的相片被保存在图库里。
具体查找打开内步骤如下:
1、打容开手机电源,进入手机主页面,如下图所示;
❽ 安卓系统所有照片存在哪个文件夹
点击【文件管理】中的【内部存储】,进去内部存储界面之后,点击tencent,点击MicroMsg。点击进去Download文件夹,就看到手机微信接收的文件。具体介绍如下:1、一般都是在腾讯文件夹中找到微信的下载文件夹即可,首先打开手机的文件管理器,点击【内部存储】;2、打开内部存储界面之后,点击【tencent】,然后选择【MicroMsg】3、进入文件夹之后再选择【Download】文件夹;进去Download文件夹之后,可以看到手机微信接收的文件。打开手机的相机,一般在右上角会有【设置】的图标,点击进入相机的设置菜单;看到路径之后,使用手机的文件管理器复制路径进入该目录,就可以看到视频文件。以下是详细介绍:1、打开手机的相机,一般在右上角会有【设置】的图标,点击进入相机的设置菜单;2、切换到视频拍摄选项中就可以看到视频的保存路线,您可以将其复制;3、打开文件管理器,点击手机,按照路径进入DICM目录,进入到相机目录,那么就可以看到视频文件;存储在手机内置存储空间中的默认查看路径是:【我的文件】-【sdcard0/设备存储】-【DCIM】-【Camera】;存储在存储卡中的默认查看路径是:【我的文件】-【extSdcard/SD card】-【DCIM】-【Camera】;
❾ Android开发,图库获取图片路径
public class TestCameraActivity extends Activity implements OnClickListener{ private Uri mOutPutFileUri; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button takePiCButton = (Button) this.findViewById(R.id.button1); takePiCButton.setOnClickListener(this); }@Override public void onClick(View v) { switch (v.getId()) { case R.id.button1: saveFullImage(); break;default: break; } } private void saveFullImage(){ Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); //文件夹aaaa String path = Environment.getExternalStorageDirectory().toString()+"/aaaa"; File path1 = new File(path); if(!path1.exists()){ path1.mkdirs(); } File file = new File(path1,System.currentTimeMillis()+".jpg"); mOutPutFileUri = Uri.fromFile(file); intent.putExtra(MediaStore.EXTRA_OUTPUT, mOutPutFileUri); startActivityForResult(intent, 1); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if(requestCode == 1){ Uri imageUri = null; if(data != null){ if(data.hasExtra("data")){ Bitmap thunbnail = data.getParcelableExtra("data"); //处理缩略图 } }else{ //处理mOutPutFileUri中的完整图像 } } }}
未经允许不得转载:山九号 » android获取图片文件夹|android编程:读取指定文件夹下所有png图片