如何以编程方式将图像从一个文件夹复制到另一个文件夹时提高性能

苏尼尔·斯伯拉曼尼(Sunil Subramannian)

我制作了一个自定义图片库,可以在其中选择多张图片,然后执行以下步骤:

  1. 通过文件I / O将该图像复制到另一个文件夹

  2. 在传输到目标文件夹时重命名图像

因此,尽管我可以同时做这两种事情,但两者之间要有很长的延迟。

Calendar calendar = Calendar.getInstance();
                Bundle bundle = new Bundle();
                for (int j=0;j<mTempFiles.size();j++){
                    try {
                        String path = mTempFiles.get(j);
                        String destination = Environment.getExternalStorageDirectory() + "/BOM/";
                        File imgDest = new File(destination,"32_"+"Product" + new Date().getTime() + calendar.get(Calendar.DATE) + calendar.get(Calendar.MONTH) + calendar.get(Calendar.YEAR)  + ".png");
                        imgDest.createNewFile();

                        outputStream = new FileOutputStream(imgDest);

                        File out = new File(path);
                        FileInputStream fis = new FileInputStream(out);
                        Bitmap imgBitmap = BitmapFactory.decodeStream(fis);

                        ByteArrayOutputStream byteOutput = new ByteArrayOutputStream();
                        imgBitmap.compress(Bitmap.CompressFormat.JPEG,100,byteOutput);
                        final byte[] imgBytes = byteOutput.toByteArray();
                        outputStream.write(imgBytes);
                        outputStream.close();

                        String dest = imgDest.getAbsolutePath();
                        compressImage(dest);
                        Bitmap bitmap = BitmapFactory.decodeFile(dest);
                        mPath.add(dest);
                        Constants.mCategoryModels.add(new CategoryModel(bitmap));

                        Constants.mFiles.add(imgDest);
                        Log.e("Main Array Size:----  ",""+Constants.mFiles.size());
奥马尔·阿夫拉克(Omar Aflak)

这是一种复制文件的方式:

private static void copyFile(File source, File dest) throws IOException {
    InputStream is = null;
    OutputStream os = null;
    try {
        is = new FileInputStream(source);
        os = new FileOutputStream(dest);
        byte[] buffer = new byte[4096];
        int length;
        while ((length = is.read(buffer)) > 0) {
            // do stuff on buffer
            os.write(buffer, 0, length);
        }
    } finally {
        is.close();
        os.close();
    }
}

/* use it as follows */

File fileToCopy = new File(path);
File destinationFile = new File(path2);
copyFile(fileToCopy, destinationFile);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

PHP将所有图像文件夹从一个文件夹复制到另一个文件夹

将文件从一个文件夹复制到另一个文件夹

将内容从一个文件夹复制到另一个文件夹

如何将一个文件夹复制到另一个文件夹

编写代码将图片从一个文件夹复制到另一个文件夹,但目标文件夹为空

如何使用Java API将文件从一个HDFS文件夹复制到另一个HDFS文件夹?

如何使用Java将文件从一个文件夹复制到另一个文件夹?

如何显示将超过 1 天的文件从一个文件夹复制到另一个文件夹的进度?

如何使用PowerShell仅将新文件从一个文件夹复制到另一个文件夹

如何使用powershell将具有不同名称的文件从一个文件夹复制到另一个文件夹?

将文件夹列表复制到另一个文件夹?

C#将最后一个文件从一个文件夹复制到另一个生成的文件夹

如何将文件夹从一个目录复制到另一个目录,文件夹覆盖而不是合并?

如何使用Python将zipfile从一个文件夹复制到另一个文件夹

将所有文件从一个文件夹复制到另一个

将文件名从一个文件夹复制到另一个

将文件从一个目标文件夹复制到另一个

无法使用 Applescript 将图像文件夹复制到另一个文件夹

使用Python将子文件夹中的图像复制到另一个文件夹

通过bash将文件名从一个文件夹的文件复制到另一个文件夹的文件

将图像复制到另一个文件夹

如何按顺序将文件从一个文件夹批量复制到另一个文件夹?

将python与mobaxterm结合使用可将25个随机文件从一个文件夹复制到另一个文件夹

将文件名末尾带有特定文本的文件从一个文件夹复制到另一个文件夹

将文件从一个文件夹复制到另一个文件夹,但每个文件之间都有间隔

将特定文件夹从一个位置复制到另一个Python

如何使用Powershell将文件夹的内容复制到另一个特定的文件夹?

如何将文件夹复制到 Makefile 中的另一个文件夹?

将所有用户的所有ini文件从一个文件夹复制到另一个文件夹