`
yunhaifeiwu
  • 浏览: 163229 次
  • 性别: Icon_minigender_1
  • 来自: 宁波
社区版块
存档分类
最新评论

关于字符串编码 译码 转码问题

    博客分类:
  • java
 
阅读更多
在java程序中,所有String 都是unicode编码形式。也就是类似new String(bytes,"gb2312")的形式,也仅仅是用gb2312把bytes译码成unicode

而真正编码的是,str.getBytes("gb2312")。他的意思是把str的字符串编码成
gb2312形式的字节串。

还有一个就是OutputStreamWriter流,能把字符串(unicode形式)转成指定编码。

下面是示例代码:

        String str;
        //用utf-8编码
        byte[] b="中華人民共和國;中华人民共和国".getBytes("utf-8");
        //用utf-8译码成unicode码
str=new String(b,"utf-8");
        
        //用big5编码
        b=str.getBytes("big5");        
        
         File f = new File("c:/aa.txt"); 
         FileOutputStream out = new java.io.FileOutputStream(f);
         
         out.write(b);       
         out.write("xxx中華人民共和國;中华人民共和国".getBytes());
         out.close();
         
         //方式二,直接由unicode编码成GBK并输出
         Writer o = new OutputStreamWriter(
                 new FileOutputStream(f,true), "GBK");
         o.write(str);
         o.close();

分享到:
评论

相关推荐

    对电文中字符串码和译码数据结构课程设计任务书.doc

    通过本课程设计报告,我们将学习如何使用Huffman编码对输入的一串文字符号进行编码,并对生成的代码串进行译码,输出电文字符串。 一、设计内容与设计要求 1. 设计内容: 本课程设计报告的主要任务是设计一个能够...

    对电文中的字符串编码和译码数据结构专业课程设计任务计划书.doc

    * 问题描述:对电文中的字符串编码和译码数据结构专业课程设计任务计划书。 * 功效要求:设计一个基于 Huffman 编码的电文字符串编码和译码系统,实现对输入一串文字符号的 Huffman 编码和译码。 五、概要设计 * ...

    赫哈曼编码的应用对输入的一串字符实现赫夫曼编码,再对赫夫曼编码生成的代码串进行译码,输出电文字符串

    解码过程则是读取这个编码文件,按照编码文件中的赫夫曼编码还原出原始的字符串。这一过程中,程序需要能够识别和处理编码文件的格式,然后通过赫夫曼树的结构将二进制编码解码回原来的字符。 在实际操作中,虽然...

    哈弗曼编码译码器 Huffman译码器

    ### 哈弗曼编码译码器:Huffman译码器 #### 一、概述 哈弗曼编码(Huffman Coding)是一种广泛应用于数据压缩领域的编码方式,它是由David A. Huffman在1952年提出的。哈弗曼编码的核心思想是通过构建一棵特殊的...

    哈夫曼编码译码器

    4. **哈夫曼译码**:在解压缩阶段,根据哈夫曼树,从编码流中依次读取“0”和“1”,按照哈夫曼树的结构向上回溯,直到到达叶子节点,从而确定对应的字符。然后将这些字符重新组合成原始文本。 5. **打印哈夫曼树**...

    赫夫曼编码译码系统(VC 6.0)

    后建立赫夫曼译码表,将用户输入字符串的编码文件按所生成的赫夫曼表进行译码,得到的字符显示出来。系统指定文件进行编码译码,将编码和译码后的字符写入文件,要求格式也要输出出来。 上述描述可知,系统必须实现...

    哈夫曼编码译码器 C语言 数据结构课设

    这个C语言实现的哈夫曼编码译码器是学习哈夫曼编码原理和实践的一个优秀案例。 首先,我们要了解哈夫曼树的构建过程。哈夫曼树是通过将频率最低的两个节点合并,不断重复此过程,直至所有节点合并成一棵树。在这个...

    哈夫曼编码/译码实现

    压缩文件即读文件,统计文件中的字符个数,对文件进行哈夫曼编码和译码,并将编码译码后的字符存储在文件中。 完成功能的详细说明: 1.统计文本文件中各字符的频率(涉及读文件,统计字符个数); 2.对文件中的...

    哈弗曼编码译码器的实现

    译码时,需要读取二进制文件中的比特流,按照哈弗曼编码规则恢复原来的字符。 4. **哈弗曼编码器**:编码器主要包含以下几个步骤: - 统计字符频率:`Stat()`函数用于计算文件中每个字符出现的次数。 - 构建...

    哈夫曼编码译码器(数据结构)

    由于高频字符编码短,低频字符编码长,所以编码后的文件通常比原始文本文件小,实现了数据压缩。 解码过程则是编码的逆操作。通过已知的哈夫曼树结构,读取二进制文件中的编码,按照哈夫曼树的规则逐位解析,恢复出...

    哈夫曼编码译码(数据结构课程设计报告+源代码)

    而译码阶段则是将接收到的编码串还原成原始数据。这一过程要求系统能够准确识别和处理编码串,确保信息的正确恢复。 #### 模块设计与流程 系统的实现涉及多个模块,包括文件读取、哈夫曼树构建、编码与译码等功能...

    信息论与编码实验——编码译码

    在信息传输和存储的过程中,编码和译码是至关重要的步骤,它们确保了数据的有效传输和准确恢复。这里我们将深入探讨标题“信息论与编码实验——编码译码”中涉及的几个核心知识点,以及描述中提到的三个具体实验。 ...

    c语言程序 数据结构课程设计模——哈夫曼编码译码器

    `HuffmanTree`类型定义了一个包含权重、父节点、左子节点和右子节点的结构体,而`HuffmanCode`则是一个指向字符编码的指针数组。 编码算法涉及多个步骤: 1. 统计输入字符串中每个字符的出现次数,将其转换为权值...

    哈夫曼编码译码系统实验报告_数据结构课程设计报告书.docx

    而译码报文阶段,则是将编码后的字符串,通过哈夫曼树进行逆向查找,解码得到原始字符。 进入测试与分析阶段,系统开发过程中不可避免地会遇到各种问题。本实验报告中特别提到了内存分配问题,这是一个在动态内存...

    哈弗曼编码译码系统

    这样,出现频率高的字符会得到较短的编码,而出现频率低的字符则编码较长,从而达到压缩数据的目的。 3. **哈夫曼解码**:解码是编码的逆过程,需要借助哈夫曼树。给定一段已编码的数据,按照编码规则,从根节点...

    Huffman编码译码器

    `huffmancode()`函数生成字符编码;`yima()`函数完成解码过程。 总之,Huffman编码译码器是一个涉及数据结构和算法的项目,它实现了根据字符频率构建和利用Huffman树进行数据压缩和解压的功能。在实际应用中,...

    赫夫曼编码译码器

    赫夫曼编码的核心思想是将出现频率高的字符赋予较短的编码,而频率低的字符则赋予较长的编码,以此来减少存储空间,提高传输效率。 在“赫夫曼编码译码器”这个小程序中,我们可以理解它具备两个主要功能:编码和...

    哈夫曼编码译码C语言编写[参考].pdf

    * 对于每个叶节点,生成一个编码字符串,并将其存储在HuffmanCode结构体中。 * 然后,对于每个符号,生成一个唯一的编码,通过遍历哈夫曼树,根据符号的出现概率来确定编码的长度。 3. 哈夫曼解码的实现 哈夫曼...

Global site tag (gtag.js) - Google Analytics