java下字符串和字节数组如何转换?

1、字节数组转换为字符串

byte[] byBuffer = new byte[20];
... ...
String strRead = new String(byBuffer);
strRead = String.copyValueOf(strRead.toCharArray(), 0, byBuffer.length]);

2、字符串转换成字节数组

byte[] byBuffer = new byte[200];
String strInput="abcdefg";
byBuffer= strInput.getBytes();

注意:如果字符串里面含有中文,要特别注意,在android系统下,默认是UTF8编码,一个中文字符相当于3个字节,只有gb2312下一个中文相当于2字节。这种情况下可采取以下办法:

byte[] byBuffer = new byte[200];
String strInput="我是字符串";
byBuffer= strInput.getBytes("gb2312");

时间: 2024-11-10 00:42:39

java下字符串和字节数组如何转换?的相关文章

java中字符串转换为字节数组请问用什么方法,字符串返回字节数组怎么做?

问题描述 java中字符串转换为字节数组请问用什么方法,字符串返回字节数组怎么做? java中字符串转换为字节数组请问用什么方法,字符串返回字节数组怎么做? 解决方案 http://blog.csdn.net/shuaihj/article/details/7478773http://blog.csdn.net/abin_gha/article/details/6317850 解决方案二: java中String类有getBytes方法,可以将字符串转成字节数组.字节数组可以直接写入到输出流中,

C# 16进制与字符串、字节数组之间的转换_C#教程

复制代码 代码如下: /// <summary> /// 字符串转16进制字节数组 /// </summary> /// <param name="hexString"></param> /// <returns></returns> private static byte[] strToToHexByte(string hexString) { hexString = hexString.Replace(&quo

C# 16进制与字符串、字节数组之间的转换

/// <summary> /// 字符串转16进制字节数组 /// </summary> /// <param name="hexString"></param> /// <returns></returns> private static byte[] strToToHexByte(string hexString) { hexString = hexString.Replace(" ",

Java下枚举变量与其他数据类型的转换

Java下枚举变量与其他数据类型的转换 当使用enum定义一个枚举类型时,实际上所定义的类型自动继承了java.lang.Enum类.而每个被枚举的成员实质就是一个枚举类型的实例,他们默认都是public static final的.可以直接通过枚举类型名直接使用它们,枚举类型名,可以转为一个数值,或作字符匹配的方法来识别类型,所以我们在写枚举类型的时候,可以简单理解为一个个的串. 如下: public enum emOrder {        orOne, orTwo, orClass   

Java中字符串与byte数组之间的相互转换_java

前言 Java与其他语言编写的程序进行tcp/ip socket通讯时,通讯内容一般都转换成byte数组型,java在字符与数组转换也是非常方便的.下面跟我一起来了解一下字符串与byte之间转换的原理 原理 我们都知道,在Java里byte类型是占用1个字节,即8位的,而16进制的字符占用4位,所以每个byte可以用两个字符来表示,反之亦然. 举个例子 byte = 123 用二进制表示:0111 1011 每4位用字符表示: 7 b 是的,原理就这么简单,接下来用代码实现: byte[] 转1

PHP字符串与字节数组的例子

一.正则法(当文本相当长时,速度会很快) function stringToByteArray($str,$charset,$to_charset) { $str = iconv($charset,$to_charset,$str); preg_match_all('/(.)/s',$str,$bytes); $bytes=array_map('ord',$bytes[1]) ; return $bytes; } function byteArrayToString($bytes,$charse

java 从InputStream 获取字节数组

Java 中,如何从InputStream 读取字节数组呢? 方式一: Java代码   /***       * Has been tested       *        * @param in       * @return       * @throws IOException       */       public static byte[] readBytes(InputStream in) throws IOException {           byte[] temp 

C#字节数组转换成字符串浅析

C#语言还是比较常见的东西,这里我们主要介绍C#字节数组转换成字符串,包括介绍字符串转换到字节数组等方面. C#字节数组转换成字符串 如果还想从 System.String 类中找到方法进行字符串和字节数组之间的转换,恐怕你会失望了.为了进行这样的转换,我们不得不借助另一个类:System.Text.Encoding.该类提供了 bye[] GetBytes(string) 方法将字符串转换成字节数组,还提供了 string GetString(byte[]) 方法将C#字节数组转换成字符串.

详解Java中ByteArray字节数组的输入输出流的用法_java

ByteArrayInputStream 介绍ByteArrayInputStream 是字节数组输入流.它继承于InputStream. 它包含一个内部缓冲区,该缓冲区包含从流中读取的字节:通俗点说,它的内部缓冲区就是一个字节数组,而ByteArrayInputStream本质就是通过字节数组来实现的. 我们都知道,InputStream通过read()向外提供接口,供它们来读取字节数据:而ByteArrayInputStream 的内部额外的定义了一个计数器,它被用来跟踪 read() 方法