`
jw1314
  • 浏览: 27491 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

编码问题

    博客分类:
  • java
 
阅读更多
   编码问题,说是一个小问题,当然不出问题的时间就是没有问题。当出了问题的时候,你才会发现这其实是一个大大问题。
   字符编码是计算机技术的基石,想要熟练使用计算机,就必须懂得一点字符编码的知识
1. ASCII码
    我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串。每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte)。ASCII码一共规定了128个字符的编码,只占用了一个字节的后面7位,最前面的1位统一规定为0
2.Unicode码
      Unicode码,是一种通用的国际标准。 Unicode给每个字符提供了一个唯一的数字,不论是什么平台、不论是什么程序、不论什么语言。Unicode码指的是UCS-2编码方式,即直接用两个字节存入字符的Unicode码。值得注意的是,Unicode只是一个符号集,它只规定了符号的二进制代码,却没有规定这个二进制代码应该如何存储
3. UTF-8
  UTF-8就是在互联网上使用最广的一种unicode的实现方式。UTF-8最大的一个特点,就是它是一种变长的编码方式。
1)对于单字节的符号,字节的第一位设为0,后面7位为这个符号的unicode码。因此对于英语字母,UTF-8编码和ASCII码是相同的
2)对于n字节的符号(n>1),第一个字节的前n位都设为1,第n+1位设为0,后面字节的前两位一律设为10。剩下的没有提及的二进制位,全部为这个符号的unicode码。
4.GBK
   GBK编码也是平时比较常见的编码方式。GBK编码,是微软利用GB 2312-80未使用的编码空间,收录GB 13000.1-93全部字符制定了GBK编码。GB 2312-80只收录6763个汉字,这远远不够收录完几万多的中国汉字的。GBK自身并非国家标准,居然还是微软制定的 。之后中国质量技术监督局于2000年3月17日推出了GB 18030-2000标准,之后又出了 GB18030-2005。ASCII—GB2312—GBK—GB18030他们都是向下兼容的,区分英文编码和中文编码的方法是高字节的最高位不为0,其实GB中文编码都是双字节字符集。
    网上查了一下,GB 18030与GBK基本兼容,不是完全兼容。
 
   项目中,我遇见了java操作文本文件的问题,总结了一些知识。
1、如果一个文件只用到了英文,没有中文,不管你用GBK,还是UTF-8去打开文件,都不会有乱码。因为GBK与UTF-8都兼容ASCII。
2、WINDOWS下,记事本、Dreamweaver等编辑器会在文件开头加入BOM信息。在处理这些文件的时候一定要去掉BOM。
3、不同的操作系统对换行的处理也不同。Unix系统里,每行结尾只有"<换行>",即"\n";Windows系统里面,每行结尾是"<回车><换行>",即"\r\n";Mac系统里,每行结尾是"<回车>"。一个直接后果是,Unix/Mac系统下的文件在Windows里打开的话,所有文字会变成一行;而Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号。
分享到:
评论

相关推荐

    最全的编码问题,乱码问题,uft-8

    本文将详细探讨编码问题中的两大常见编码格式:UTF-8与GBK,并通过具体的设置步骤来解决常见的乱码问题。 #### 二、字符编码概述 字符编码是计算机中表示字符的一种方式,不同的编码系统用于处理不同的字符集。在...

    log4j乱码问题解决办法

    - **使用统一编码**:为了减少乱码问题的发生,建议在项目中尽可能使用统一的编码格式。一般情况下,UTF-8是最常用也是最推荐的选择。 #### 五、总结 通过以上步骤,可以有效地解决log4j中的乱码问题。正确的日志...

    java中文乱码问题详解--- java中文乱码问题详解

    2. **显式指定编码**:在进行文件读写、网络通信等操作时,显式指定字符集编码,以避免默认编码带来的乱码问题。 3. **配置JVM和Web容器**:合理配置JVM和Web容器的字符集参数,确保在运行时能够正确地处理各种编码...

    利用过滤器解决JavaWeb(JSP)的乱码问题

    总之,解决JavaWeb中的乱码问题需要从多个层面进行考虑:设置过滤器统一请求和响应的编码,确保JSP页面的编码正确,以及在处理文件时注意文件内容的编码。通过这些方式,我们可以有效防止和解决乱码问题,提高应用...

    js出现乱码问题介绍大全

    JavaScript作为前端开发的核心技术之一,在处理字符编码方面同样会遇到各种各样的乱码问题。本文将详细介绍JavaScript中常见的乱码现象及其解决方案,帮助开发者更好地理解和解决这类问题。 #### 二、JS乱码问题...

    Ajax中文乱码问题解决方案

    然而,在处理中文字符时,Ajax请求可能会遇到乱码问题,这主要是由于编码格式不一致或者处理不当导致的。本文将深入探讨Ajax中文乱码问题的成因,并提供一系列解决方案。 **一、问题原因** 1. **编码格式不一致**...

    乱码问题的解决

    "乱码问题的解决" 在 Web 开发中,乱码问题是常见的...乱码问题的解决需要从多方面入手,包括设置页面编码、服务器编码、客户端编码、数据库编码和超链接的 url 编码等。只有通过统一编码,才能避免乱码问题的出现。

    用C#2005解决文件编码问题和文件显示乱码问题

    在编程领域,尤其是在处理文本文件时,文件编码和字符乱码问题是一个常见的挑战。本文将深入探讨如何使用C# 2005解决这些问题。C#是一种强大的编程语言,广泛应用于Windows应用程序开发,包括文件操作。 首先,让...

    java zip压缩解压工具解决中文乱码问题

    以上代码片段展示了如何利用Apache Commons IO库来处理中文乱码问题,使得在Java中进行ZIP文件的压缩和解压更加便捷和准确。在实际开发中,根据项目需求,可以选择使用标准库或者Apache Commons IO库,确保文件名和...

    java android zip解压缩(解决压缩中文乱码问题)

    然而,当压缩文件包含中文字符时,解压缩过程中可能会遇到乱码问题。这是因为编码格式不匹配或者处理方式不当导致的。本篇文章将深入探讨如何在Android平台上解决Java ZIP库在解压缩中文文件时出现的乱码问题。 ...

    js中文乱码问题分析及解决方案.docx

    如果Web页面和JavaScript文件使用不同的编码,可能会出现乱码问题。本文将分析JavaScript中文乱码问题的原因,并提供相应的解决方案。 一、JavaScript中文乱码问题的原因 在Web开发中,我们经常使用JavaScript文件...

    struts 中文乱码问题解决

    在Struts应用中,中文乱码问题最常见的原因是编码设置不一致。服务器端和客户端之间的数据传输如果使用不同的字符集,就会导致乱码现象。例如,当客户端以UTF-8编码发送请求,而服务器端却以GBK编码接收时,就会出现...

    深入分析 Java 中的中文编码问题

    Java中默认使用的是Unicode编码,但在处理外部数据时,如读取文本文件、接收HTTP请求或连接数据库时,如果没有正确设置编码,就可能导致乱码问题。例如,当读取GBK编码的文本文件,而使用UTF-8解码时,会出现乱码。 ...

    解决gb2312编码导致乱码问题

    标题提到的“解决gb2312编码导致乱码问题”是一个典型的字符编码问题,它涉及到如何在不同的编码格式之间正确转换,以确保中文字符在传输和显示时的正确性。gb2312是一种较老的中文字符编码标准,主要用于简体中文,...

    中文乱码问题分析 自己总结的

    在 Java 与数据库之间的乱码问题中,大部分数据库都支持以 unicode 编码方式,所以解决 Java 与数据库之间的乱码问题比较明智的方式是直接使用 unicode 编码与数据库交互。很多数据库驱动自动支持 unicode,如 ...

    SAS EG导入UTF-8编码的文本数据文件时的乱码问题解决方法

    在使用SAS EG(Enterprise Guide)导入编码为UTF-8的文本数据文件时,用户可能会遇到中文乱码问题。UTF-8编码的文本文件在处理中文字符时,如果没有正确设置编码,可能会导致中文字符显示不正确,即出现乱码现象。...

    Java开发Client客户端,连接Windows的Telnet服务器,解决了中文乱码问题

    本文将详细探讨如何使用Java开发这样的客户端,并解决在处理中文字符时可能出现的乱码问题。 首先,让我们了解Java中的Socket编程。在Java中,`java.net.Socket`类提供了TCP/IP套接字功能,可以用于建立客户端到...

    Servlet及jsp解决中文乱码问题

    4. **表单提交方式引起的编码问题**:不同的表单提交方式(GET与POST)对于编码的处理方式不同,如果不加以处理,也会导致乱码问题。 #### 三、解决中文乱码的具体方法 ##### 1. 数据库配置 - **MySQL数据库配置*...

    jsp页面文档编码问题

    总的来说,理解和正确使用`contentType`和`pageEncoding`是解决Java Web开发中乱码问题的关键。通过清晰的编码策略和规范的编码实践,可以避免许多不必要的编码困扰,提高项目的稳定性和用户体验。

Global site tag (gtag.js) - Google Analytics