1、Char是无符号型的,可以表示一个整数,不能表示负数;而byte是有符号型的,可以表示-128—127 的数;如: [html] char c = (char) -3; // char不能识别负数,必须强制转换否则报错,即使强制转换之后,也无法识别 System.out.println(c); byte d1 = 1; byte d2 = -1; byte d3 = 127; // 如果是...
这是因为FileStream类操作的是字节和字节数组,而Stream类操作的是字符数据。这是这两种类的一个重要区别,如果你是准备读取byte数据的话,用StreamReader读取然后用 System.Text.Encoding.Default.GetBytes转化的话,如下,则可能出现数据丢失的情况,如byte数据的个数不对等。因此操作byte数据时要用FileStream。 string textCon...
byte 是字节数据类型 ,是有符号型的,占1 个字节;大小范围为-128—127 。 char 是字符数据类型 ,是无符号型的,占2字节(Unicode码 );大小范围 是0—65535 ; char是一个16位二进制的Unicode字符,JAVA用char来表示一个字符 。
由于一个汉字在我的GBK系统里占用2个字节,所以byte的只能插入2个汉字,而char的可以插入5个汉字。 所以byte 就是字节数,对于汉字,GBK占用2个字节,如果是UTF-8则占用3个字节。 为了充分利用4000个的上限,给自己减少麻烦,建议存储含有中文文字的字段时,采用char类型。
下面用实例来比较一下二者的区别: 1、Char是无符号型的,可以表示一个整数,不能表示负数;而byte是有符号型的,可以表示-128—127 的数;如: [html] char c = (char) -3; // char不能识别负数,必须强制转换否则报错,即使强制转换之后,也无法识别
解说:“张”的byte:-43,-59 这是byte直接输出,转为int 输出是213,103,再转为16进制: d5c5就是GBK的:张 char与byte的区别 byte 是字节数据类型 ,是有符号型的,占1 个字节;大小范围为-128—127 。 char 是字符数据类型 ,是无符号型的,占2字节(Unicode码 );大小范围 是0—65535 ; ...
解说:“张”的byte:-43,-59 这是byte直接输出,转为int 输出是213,103,再转为16进制: d5c5就是GBK的:张 char与byte的区别 byte 是字节数据类型 ,是有符号型的,占1 个字节;大小范围为-128—127 。 char 是字符数据类型 ,是无符号型的,占2字节(Unicode码 );大小范围 是0—65535 ; ...
public static byte[] charToByte(char ch){ int temp=(int)ch; byte[] b=new byte[2]; for (int i=b.length-1;i>-1;i--){ b = new Integer(temp&0xff).byteValue(); //将最高位保存在最低位 temp = temp >> 8; //向右移8位 ...
下面用实例来比较一下二者的区别: 1、Char是无符号型的,可以表示一个整数,不能表示负数;而byte是有符号型的,可以表示-128—127 的数;如: [html] char c = (char) -3; // char不能识别负数,必须强制转换否则报错,即使强制转换之后,也无法识别