不建议使用IOUtils.toByteArray-我们可以使用什么呢?

时间:2018-10-24 07:51:52

标签: java spring-boot

我正在开发spring boot应用程序,需要使用toByteArray提供的IOUtils方法,但已弃用。在string.getBytes()应用程序中使用spring boot替代安全吗?还是有另一种方法从文本内容中获取字节?

2 个答案:

答案 0 :(得分:3)

最好用的,

string.getBytes("UTF-8");

最好指定编码,否则可能会使用默认的特定于平台的编码,以防万一您无法使用默认编码表示的字符(例如阿拉伯语/中文/印地语字符)会产生意外的结果。

UTF-8是最好的紧凑编码之一,它还覆盖了超过一百万个其他语言和表情符号的字符。

答案 1 :(得分:0)

等效,有两个原因:

  • 他们在javadoc中声明了它
  • 如果您看一下实现:

    /** @deprecated */
    @Deprecated
    public static byte[] toByteArray(String input) throws IOException {
        return input.getBytes();
    }
    
实际上是

getBytes()

但这不是安全,因为它假设您要使用平台默认字符集中的字节。您应该始终指定一个字符集。