A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© simonqian 中级黑马   /  2013-5-10 22:53  /  1633 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 simonqian 于 2013-5-11 11:23 编辑

编码是指:将字符串变成字节数组吗?用程序是怎么写的?举个例子?

评分

参与人数 1技术分 +1 收起 理由
曹睿翔 + 1 鼓励分,简单问题还是先百度,看完把自己不.

查看全部评分

4 个回复

倒序浏览
这个问题...

编码是一种互换,我是这么认为的,

通过字节按照不同的读取方式转换成不同的内容,当然,如果不支持的话转换过来就是所谓的乱码,

当我们在文本中输入一些字符的时候,他会按照默认的编码表,转换成相应的字节,当需要读取的时候,就按照相应的编码表读取该字节

如果两次操作的编码表不是同一个的话,就是乱码

至于程序,毕老师的java基础里面有,我就不帮你copy了

编码主要涉及的就是字节的存储,只要记住一点用哪个编码表写入的就用哪个编码表读取,就差不多了,相应的方法就查API文档吧,我还没复习,差不多忘记了,告诉你可能

是错误的

评分

参与人数 1技术分 +1 收起 理由
曹睿翔 + 1 多帮新人

查看全部评分

回复 使用道具 举报
在计算机科学中,编码一般有两种解释:一是编程的能力,这个不说;另一个就是把文字、字符、数字等符号编成数码。
即人们规定好一张表,比如GBK码表,在表中规定哪个符号对应哪个数字或者数字组合,并规定它们分别对应多少字节。
一个字符串经过一种编码形式编码后就变成了一个字节数组,但编码不单单是指把字符串编成字节数组。
下面是一个字符串编码的示例:
public class demo1{
        @Test
        public void run()throws Exception{
                String str3 = "我是中国人";
                // 字符串以GBK码表编码成字节数组
                byte[] buf = str3.getBytes("gbk");
                for(int i=0; i<buf.length; i++){
                        System.out.println(buf[i]);
                }
        }
}

评分

参与人数 1技术分 +1 收起 理由
曹睿翔 + 1 新人鼓励

查看全部评分

回复 使用道具 举报
byte[] by = string.getBytes(Charset charset) 传人指定的编码。

使用给定的 charset 将此 String 编码到 byte 序列,并将结果存储到新的 byte 数组。


例如:结果 中文字都是用负数表示。
  1. class CharSet {
  2.         public static void main(String[] args) throws Exception{

  3.                 String str = "你好";
  4.                 byte[] by = str.getBytes("GBK");
  5.                 for (byte b : by){
  6.                         System.out.println(b);
  7.                 }
  8.         }
  9. }
复制代码
结果:



希望能帮到你

回复 使用道具 举报
java编码 UTF-8 没了!现在手里的 项目是GBK的编码 结果打开中文都会乱码!还要用utf-8的编码查看
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马