我需要保存在包含字符串的字符数的第一个字节位置。然后将每个字符的值存储在以下位置。
String cadena = new String ("Desarrollo");
byte valores[] = new byte [cadena.length()];
valores = cadena.getBytes();
答案 0 :(得分:3)
使用java.nio.ByteBuffer
。根据某些给定的字符集,将String
表示形式设为byte[]
。首先将String
的大小写为int
,然后写下byte[]
。
String cadena = new String("Desarollo");
byte[] bytes = cadena.getBytes("UTF-8");
ByteBuffer buffer = ByteBuffer.allocate(4 + bytes.length); // 4 being the size of an int in bytes
buffer.putInt(cadena.length());
buffer.put(bytes);
然后,您可以使用
获取基础byte[]
buffer.array();
您应该将字符串长度写为int
,因为byte
的最大值为127,您可能会超过它。