字符串与字节数组的转换

String str = "helloworld";

byte data[] = str.getBytes();

for(int x = 0 ; x < data.length ; x++)

{

  data[x]- = 32 ;

  System.out.print(datd[x] + ‘,‘);

}

System.out.println(new String(data));

通过程序可以发现,字节并不适合处理中文。字符适合处理中文,字节适合处理二进制数据。

字符串比较

如下的比较操作

String  str = "hello";

System.out.println("Hello".equals(str));                    // false   区分大小写

System.out.println("Hello".equalsIgnoreCase(str));  //true      不区分大小写

在String类中,compareTo()方法是一个最为重要的方法,该方法返回一个整形,该数据根据大小关系返回三类的内容:

相等:返回0;

小于:返回的内容小于0;

大于:返回的内容大于0;

观察compareTo()的比较

System.out.println("A".compareTo("a"));   // -32

System.out.println("a".compareTo("A"));   // +32

System.out.println("a".compareTo("a"));   // 0

System.out.println("ab".compareTo("ac"));   // -1

System.out.println("范".compareTo("周"));   // 可以进行中文的比较,但是没有意义

compareTo是唯一一个可以区分大小写关系的方法

时间: 2024-08-27 21:20:35

字符串与字节数组的转换的相关文章

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

1.请问c#中如何将十进制数的字符串转化成十六进制数的字符串 //十进制转二进制 Console.WriteLine("十进制166的二进制表示: "+Convert.ToString(166, 2)); //十进制转八进制 Console.WriteLine("十进制166的八进制表示: "+Convert.ToString(166, 8)); //十进制转十六进制 Console.WriteLine("十进制166的十六进制表示: "+Con

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

1.请问c#中如何将十进制数的字符串转化成十六进制数的字符串   //十进制转二进制 Console.WriteLine("十进制166的二进制表示: "+Convert.ToString(166, 2)); //十进制转八进制 Console.WriteLine("十进制166的八进制表示: "+Convert.ToString(166, 8)); //十进制转十六进制 Console.WriteLine("十进制166的十六进制表示: "+C

C#串口通讯,16进制与字符串、字节数组之间的转换。

1.将十进制数的字符串转化成十六进制数的字符串 //十进制转二进制Console.WriteLine("十进制166的二进制表示: "+Convert.ToString(166, 2));//十进制转八进制Console.WriteLine("十进制166的八进制表示: "+Convert.ToString(166, 8));//十进制转十六进制Console.WriteLine("十进制166的十六进制表示: "+Convert.ToStrin

【java解惑】字符串的字节数组构造函数使用

如下代码: public class Example018 { public static void main(String[] args) { byte bs[] = new byte[256]; for (int i = 0; i < 256; i++) { bs[i] = (byte) i; } string(bs);// 调用1 string(bs, "iso-8859-1");// 调用2 string(bs, "gbk");// 调用3 strin

java常用流处理工具StreamTool 常见的InputStream流转字符串, 转字节数组等等

原文:java常用流处理工具StreamTool 常见的InputStream流转字符串, 转字节数组等等 源代码下载:http://www.zuidaima.com/share/1550463397366784.htm ava 常用流处理工具 StreamTool ,常见的InputStream 流转字符串, 转字节数组等等 **应用场景: ** 1. 文件上传 2. js / css / img 等文件读取输出. 转字符串输出 (js & css) , 转字节数组输出 (img .. swf

C# 字符串与字节数组相互转换

总结归纳:如果直接从System.String类中找到方法进行字符串和字节数组之间的转换,是不太可能的.为了使其之间进行转换,需要借助另外一个类型:System.Text.Encoding.这个类型提供了将C#字符串转换成字节数组的方法,也提供了将C# 字节数组转换成字符串. System.Text.Encoding类型的默认构造函数不太可用,不过该类型提供了几种默认的静态属性.如下: 1 // 2 // 摘要: 3 // 获取 ASCII(7 位)字符集的编码. 4 // 5 // 返回结果:

打印机打印字符串转字节数组截取半个中文导致的乱码问题

打印机打印的时候  要求:打印一行文字,但这行文字实际长度 len(单位是:px)是固定的 这时候我们的思路是  :GBK编码下汉字占用两个字节,而且这两个字节都是负数,char型字符占用一个字节, 每个汉字占用的宽度是24px   每个char型占用的宽度是12px    换言之每个字节占用的打印宽度是12px 本行所容纳的字节个数 num=len / 12: 这时候我们将字符串转为字节数组  截取num个字节放到字节数组,然后转为字符串就是该行打印的字符串 但是有个问题就是 当我们截取的最后

C# 字符串和字节数组转换

转自:http://blog.sina.com.cn/s/blog_683d60ff0100rhwk.html 定义string变量为str,内存流变量为ms,比特数组为bt 1.字符串转比特数组 (1)byte[] bt=System.Text.Encoding.Default.GetBytes("字符串"); (2)byte[] bt=Convert.FromBase64String("字符串"); 2.字符串转流 (1)MemoryStream ms=new

C#结构体和字节数组的转换函数

在通信过程中,一般我们都会操作到字节数组.特别是希望在不同语言编程进行操作的时候. 虽然C#提供了序列化的支持,不用字节数组也行.但操作字节数组肯定会碰到. 一般都会采用结构来表示字节数组.但结构与字节数组直接的转换实在很麻烦. 字节操作不但容易出错,而且每增加一个结构,就自己实现一遍,实在是烦不胜烦. 有没有简单的方法呢?当然有.可以采用非托管区的一些方法来实现. 首先,导入命名空间:System.Runtime.InteropServices; 定义结构的时候,要给结构指定特性. 如: //