当前位置:秒懂库 > IT科技 > java,getbytes
手机版

java,getbytes

来源:秒懂库 阅读:2.91W 次

<link rel="stylesheet" href="https://js.how234.com/third-party/SyntaxHighlighter/shCoreDefault.css" type="text/css" /><script type="text/javascript" src="https://js.how234.com/third-party/SyntaxHighlighter/shCore.js"></script><script type="text/javascript"> SyntaxHighlighter.all(); </script>

java getbytes是什么,让我们一起了解一下?

getBytes() 是Java编程语言中将一个字符串转化为一个字节数组byte[]的方法。String的getBytes()方法是得到一个系统默认的编码格式的字节数组。

如何了解JAVA的getBytes()方法?

在Java中,String的getBytes()方法是得到一个操作系统默认的编码格式的字节数组。这个表示在不同情况下,返回的东西不一样! 

String.getBytes(String decode)方法会根据指定的decode编码返回某字符串在该编码下的byte数组表示,如:

byte[] b_gbk = "深".getBytes("GBK");   byte[] b_utf8 = "深".getBytes("UTF-8");   byte[] b_iso88591 = "深".getBytes("ISO8859-1");   byte[] b_unicode = "深".getBytes("unicode");

将分别返回“深”这个汉字在GBK、UTF-8、ISO8859-1和unicode编码下的byte数组表示,此时b_gbk的长度为2,b_utf8的长度为3,b_iso88591的长度为1,unicode为4。 

java getbytes

而与getBytes相对的,可以通过new String(byte[], decode)的方式来还原这个“深”字时,这个new String(byte[], decode)实际是使用decode指定的编码来将byte[]解析成字符串。

String s_gbk = new String(b_gbk,"GBK");   String s_utf8 = new String(b_utf8,"UTF-8");   String s_iso88591 = new String(b_iso88591,"ISO8859-1");   String s_unicode = new String(b_unicode, "unicode");

因此,通过String.getBytes(String decode)方法来得到byte[]时,一定要确定decode的编码表中确实存在String表示的码值,这样得到的byte[]数组才能正确被还原。

本文链接:https://www.miaodongku.com/itkj/458z46.html

Copyright © 2024. 秒懂库 All right reserved. 黑ICP备20202358号-2

文字美图素材,版权属于原作者。部分文章内容由网友提供推送时因种种原因未能与原作者联系上,若涉及版权问题,敬请原作者联系我们,立即处理。