Java String getBytes()

2025 年 3 月 24 日 | 阅读 3 分钟

Java String 类的 getBytes() 方法会将字符串编码为字节序列,并将其存储在字节数组中。

签名

getBytes() 方法有三种重载形式。string getBytes() 方法的签名或语法如下所示:

参数

charset / charsetName - 方法支持的字符集的名称。

返回值

字节序列。

异常抛出

UnsupportedEncodingException: 当方法不支持指定的字符集时,会抛出此异常。

内部实现

String 类 getBytes() 方法示例

不带参数的 getBytes() 方法使用平台的默认字符集(UTF-8)对字符串进行编码。以下两个示例展示了相同的内容。

示例

编译并运行

输出

65
66
67
68
69
70
71

Java String 类 getBytes() 方法示例 2

该方法返回一个字节数组,该字节数组又可以传递给 String 构造函数来获取 String。

示例

编译并运行

输出

65
66
67
68
69
70
71
ABCDEFG

Java String 类 getBytes() 方法示例 3

以下示例展示了编码到不同的字符集。

输出

The input String is : 
Welcome to TpointTech.

After converted into UTF-16 the String is : 
-2-10870101010809901110109010103201160111032074097011809708401120111010501100116046

After converted into UTF-16BE the String is : 
0870101010809901110109010103201160111032074097011809708401120111010501100116046

After converted into ISO-8859-1 the String is : 
871011089911110910132116111327497118978411211110511011646

After converted into UTF-16LE the String is : 
8701010108099011101090101032011601110320740970118097084011201110105011001160460

Java String 类 getBytes() 方法示例 4

以下示例展示了当 getBytes() 方法不支持指定的字符集时,会抛出 UnsupportedEncodingException。

示例

编译并运行

输出

/StringGetBytesExample4.java:11: error: unreported exception UnsupportedEncodingException; must be caught or declared to be thrown
byte[] byteArr = str.getBytes("UTF-17");
                             ^
1 error

下一个主题Java String getChars()