[1257]python bytearray()和java getBytes()

2024-01-08 09:09:34 浏览数 (2)

文章目录
  • Python bytearray() 函数
  • Java String类中getBytes()方法的使用

最近在处理密钥相关的项目,需要将java代码转换为python,其中java有个函数是getBytes(),需要转换成python的函数,经查找资料发现python用的是bytearray()

java python 代码分别如下:

代码语言:javascript复制
java  : Passwd.getBytes()

python : bytearray(passwd)

Python bytearray() 函数

描述:bytearray() 方法返回一个新字节数组。这个数组里的元素是可变的,并且每个元素的值范围: 0 <= x < 256。

语法:bytearray()方法语法

代码语言:javascript复制
class bytearray([source[, encoding[, errors]]])

参数

  • 如果 source 为整数,则返回一个长度为 source 的初始化数组;
  • 如果 source 为字符串,则按照指定的 encoding 将字符串转换为字节序列;
  • 如果 source 为可迭代类型,则元素必须为[0 ,255] 中的整数;
  • 如果 source 为与 buffer 接口一致的对象,则此对象也可以被用于初始化 bytearray。
  • 如果没有输入任何参数,默认就是初始化数组为0个元素。

返回值:返回新字节数组。

实例:以下实例展示了 bytearray() 的使用方法

代码语言:javascript复制
>>>bytearray()
bytearray(b'')
>>> bytearray([1,2,3])
bytearray(b'x01x02x03')
>>> bytearray('runoob', 'utf-8')
bytearray(b'runoob')
>>>

Java String类中getBytes()方法的使用

getBytes()方法是String类中的一个方法,它的作用是将字符串转换为字节数组。该方法有多个重载形式,可以指定字符编码方式,也可以指定起始位置和长度等参数。

使用示例:

代码语言:javascript复制
String str = "Hello, world!"; 
byte[] bytes = str.getBytes(); // 使用默认字符编码方式转换为字节数组 

String str = "你好,世界!"; 
byte[] bytes = str.getBytes("UTF-8"); // 指定字符编码方式为UTF-8转换为字节数组 

String str = "Hello, world!"; 
byte[] bytes = str.getBytes(6, 5); // 从第6个字符开始,取5个字符转换为字节数组 

注意事项:

  1. 如果不指定字符编码方式,默认使用平台默认的字符编码方式。
  2. 如果指定的字符编码方式不支持,会抛出UnsupportedEncodingException异常。
  3. 如果指定的起始位置和长度超出字符串的范围,会抛出IndexOutOfBoundsException异常。

参考:https://blog.csdn.net/ksearch/article/details/50911886 https://www.runoob.com/python/python-func-bytearray.html https://www.itxm.cn/post/ajcjea1a1.html

0 人点赞