java - 在java代码中使用不同的压缩算法

标签 java algorithm compression brotli

我有一个简短的问题。我有几个图像,都是 bmp 格式,我想将不同的压缩算法选项合并到我正在编写的应用程序中。即,假设用户选择“Image1.bmp”并希望使用 Brotli 或 JP2K 压缩和导出它。我如何将这些算法合并到它们自己的监听器函数中,以便根据该算法压缩图像?我已经设置了监听器和所有东西,所以这个问题我需要帮助的唯一方面是实际包含算法。有没有我不知道的插件?我看过一点 GeoTools,但这似乎只适用于 JP2k。

如有任何见解,我们将不胜感激。非常感谢!

编辑:我只是有一个想法。有没有一种方法可以有效地从 Java 函数中运行针对某些算法的命令行请求?

最佳答案

您可以创建一个接口(interface),然后创建类来实现您想要的算法:

public interface ICompressionMethods
{
    public void cMethod();
}

然后:

public class Brotli implements ICompressionMethods
{
    @Override
    public void cMethod()
    {
        // Your compression code here
    }
}

现在您需要在新类中实现每个新的不同算法。 这种方法的好处是您可以将一个简单且相似的参数(如 ICompressionMethod)传递给您的方法,并根据它们的实现获得不同的结果!

关于java - 在java代码中使用不同的压缩算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40980875/

相关文章:

压缩棋局

java - ArrayIndexOutOfBoundsException 原因未知

java - 包名与文件路径不对应

c# - 如何在序列化之前检查类文件是否已更改?

algorithm - 对于某个问题,如果我有一个 O(f1(m,n)) 算法和一个 O(f2(m,n)) 算法,我可以有一个 O(min(f1(m,n),f2(m, n)))算法?

algorithm - Python快速异或超范围算法

c# - 如何压缩zip文件中的多个文件

algorithm - 这个算法/​​例程的名称是什么?

Java Recursion - 几个递归调用的输出

java - RxJava 中的任务取消是如何工作的?