1

因此,在查看了关于 String 和 DataHandlers 的类似 SO Post之后,我在效率方面遇到了问题。我的网络服务中有一个已经编码的字符串。我需要将此 String 转换为 aDataHandler以放入 POJO 并发送到另一个服务。当我使用new ByteArrayDataSource(String, type)它时,它正在编码已经编码的字符串(第二次)。

为了解决这个问题,我正在解码输入,然后将创建的内容传递byte[]new ByteArrayDataSource(byte[], type). 当我已经传入了编码版本时,我担心在必须解码和重新编码图像时这会造成性能损失。有没有一种方法可以从已经编码的字符串创建DataHandler(或DataSource)而不需要“ MIME 类型”,所以我不必解码即可编码?

我尝试过使用FileDataSource(String),但这不起作用,在处理ByteArrayDataSource(byte[], String)解码字符串时使用了相同的输入。我还尝试使用ByteArrayDataSource(String, type).

4

1 回答 1

1

经过一番搜索后,我发现了一个可以执行此操作的 Apache 库,但我不确定它的效率会提高多少。 Apache Axis2 有一个 ConverterUtil 类,它看起来有很多用于字符串的二进制操作方法。

再看一下该代码,代码convertToDataHandler(String)只是将字符串传递给convertToBase64Binary(String)函数。这只是通过解码然后继续从 String 创建一个新的 ByteArrayDataSource。所以这个工具只是总结了我已经在做的功能。

于 2014-04-08T14:41:43.290 回答