【问题标题】:How to convert a bitmap to a jpeg file in Android? [closed]如何在 Android 中将位图转换为 jpeg 文件? [关闭]
【发布时间】:2013-12-18 04:59:27
【问题描述】:

我有一个裁剪的位图图像,我需要将其保存到 jpeg 文件中。

提前致谢

【问题讨论】:

  • Verrrry 很有帮助的问题,似乎 SOF 指南不是 SOF 指南。点赞\

标签: android file bitmap jpeg


【解决方案1】:

使用这个:

Bitmap bmp = null;
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bmp.compress(Bitmap.CompressFormat.JPEG, 100, stream);
byte[] byteArray = stream.toByteArray();

为此,您可以使用:

FileInputStream fileInputStream = null;

File file = new File("yourfile");

byteArray = new byte[(int) file.length()];

try {
    //convert file into array of bytes
    fileInputStream = new FileInputStream(file);
    fileInputStream.read(bFile);
    fileInputStream.close();

    //convert array of bytes into file
    FileOutputStream fileOuputStream =
            new FileOutputStream("C:\\testing2.txt");
    fileOuputStream.write(bFile);
    fileOuputStream.close();

    System.out.println("Done");
} catch (Exception e) {
    e.printStackTrace();
}

如需更多信息,请联系here

【讨论】:

  • 如何将 byteArray 转换为 File 对象?,我需要将 File 放入 FileInputStream thx
  • 感谢您对这个非常有用的问题的非常有用的回答。我真的不明白为什么这会是“离题”。这正是我需要知道的。
【解决方案2】:

试试这个

bitmap.compress(Bitmap.CompressFormat.JPEG, quality, outStream);

这是一个示例程序

compressing-a-bitmap-to-jpg-format-android

【讨论】:

    【解决方案3】:

    我想这就是你需要的

    bitmap.compress(CompressFormat.JPEG, 90, outputStream);
    

    希望对你有帮助。

    【讨论】:

    • 好点。对于那些不知道如何使用这种方法的人: 1. ByteArrayOutputStream out = new ByteArrayOutputStream(); 2. bitmap.compress(CompressFormat.JPEG, 90, out); 3. 将 byte[] 写入文件或在其他任何地方使用它(例如,您可以借助 Glide 在 ImageView 中显示它库)
    猜你喜欢
    • 2012-06-13
    • 1970-01-01
    • 2015-09-23
    • 2014-04-16
    • 1970-01-01
    • 2013-01-01
    • 1970-01-01
    • 2012-12-21
    • 2015-02-10
    相关资源
    最近更新 更多