我在字符串中有一长串十六进制数字,例如
000000000000484240FA063DE5D0B744ADBED63A81FAEA390000C8428640A43D5005BD44
只有更长,几千字节.有没有内置的方法将其转换为python 2.6/3中的字节对象?
单个UTF-8编码字符的最大字节数是多少?
我将加密以UTF-8编码的字符串的字节,因此需要能够计算出UTF-8编码字符串的最大字节数.
有人可以确认单个UTF-8编码字符的最大字节数
可能重复:
将整数转换为字节数组(Java)
我需要存储一个缓冲区的长度,在一个4字节大的字节数组中.
伪代码:
private byte[] convertLengthToByte(byte[] myBuffer)
{
int length = myBuffer.length;
byte[] byteLength = new byte[4];
//here is where I need to convert the int length to a byte array
byteLength = length.toByteArray;
return byteLength;
}
Run Code Online (Sandbox Code Playgroud)
实现这一目标的最佳方法是什么?请记住,我必须稍后将该字节数组转换回整数.
我怎样才能在Python中表示一个字节数组(比如带有byte []的Java)?我需要用gevent通过电线发送它.
byte key[] = {0x13, 0x00, 0x00, 0x00, 0x08, 0x00};
Run Code Online (Sandbox Code Playgroud) 这是一个Python 101类型的问题,但是当我尝试使用似乎将我的字符串输入转换为字节的包时,我感到困惑了一段时间.
正如您将在下面看到的,我找到了自己的答案,但我觉得这里值得记录,因为我花了很长时间才发现了正在发生的事情.它似乎是Python 3的通用,所以我没有提到我正在玩的原始包; 它似乎不是一个错误(只是特定的包有一个.tostring()方法明显没有产生我理解为字符串...)
我的测试程序是这样的:
import mangler # spoof package
stringThing = """
<Doc>
<Greeting>Hello World</Greeting>
<Greeting>??</Greeting>
</Doc>
"""
# print out the input
print('This is the string input:')
print(stringThing)
# now make the string into bytes
bytesThing = mangler.tostring(stringThing) # pseudo-code again
# now print it out
print('\nThis is the bytes output:')
print(bytesThing)
Run Code Online (Sandbox Code Playgroud)
此代码的输出给出了:
This is the string input:
<Doc>
<Greeting>Hello World</Greeting>
<Greeting>??</Greeting>
</Doc>
This is the bytes output:
b'\n<Doc>\n <Greeting>Hello World</Greeting>\n <Greeting>\xe4\xbd\xa0\xe5\xa5\xbd</Greeting>\n</Doc>\n'
Run Code Online (Sandbox Code Playgroud)
因此,需要能够在字节和字符串之间进行转换,以避免最终将非ascii字符转换为gobbledegook.
我在java中构造一个字节数组,我不知道数组会有多长.
我想要一些像Java的StringBuffer这样的工具你可以调用.append(字节b)或.append(byte [] buf)并让它缓冲我的所有字节并在完成后返回给我一个字节数组.是否有一个类用于StringBuffer为字符串做什么?它看起来不像我正在寻找的ByteBuffer类.
谁有一个很好的解决方案?
将文件转换为字节数组是将ANY文件格式保存到磁盘或数据库var二进制列的最佳方法吗?
因此,如果有人想保存.gif或.doc/.docx或.pdf文件,我可以将其转换为字节数UFT8并将其作为字节流保存到数据库中吗?
我希望byte[]使用使用SHA1Algorithm的哈希给定数组SHA1Managed.
该byte[]散列将来自单元测试.
预期的散列是0d71ee4472658cd5874c5578410a9d8611fc9aef(区分大小写).
我怎样才能做到这一点?
public string Hash(byte [] temp)
{
using (SHA1Managed sha1 = new SHA1Managed())
{
}
}
Run Code Online (Sandbox Code Playgroud) 我需要通过TCP创建一个客户端 - 服务器示例.在客户端,我读了2个数字,然后将它们发送到服务器.我遇到的问题是我无法转换[]byte为int,因为通信只接受类型的数据[]byte.
有没有办法转换[]byte为int或我可以发送int到服务器?
一些示例代码将非常感激.
谢谢.