`

1.对Java编码的理解

    博客分类:
  • JSP
阅读更多

1.原理

String username = req.getParameter("username");
username = new String(username.getBytes("iso-8859-1
"), "GB18030
");

 我们本应该用GB18030的编码来读取数据并解码成字符串,但结果却采用了ISO-8859-1的编码,导致生成一个错误的字符串。要恢复,就要先把字 符串恢复成原始字节数组,然后通过正确的编码GB18030再次解码成字符串(即把以GB18030编码的数据转成unicode的字符串)。注意,字符 串永远都是unicode编码的。

 

2.例子

new String(input.getBytes("ISO-8859-1"), "UTF-8")
如input为读取文件a.txt包含中文的内容,经过测试,以上语句只有满足
1, a.txt使用UTF-8编码 (即数据的本来编码 )
2, JVM的编码为ISO-8859-1,即Charset.defaultCharset()=ISO-8859-1 (即读取时采用的默认编码 )
中文内容显示正常,但对编码问题大家还是可以多多发表自己的看法。

 

 

 

分享到:
评论

相关推荐

    Java编码规范.docJava编码规范.doc

    ### Java编码规范详解 #### 一、为什么要制定编码规范? 代码规范对于软件开发的重要性不容忽视。良好的代码风格不仅能提升代码的可读性,还能增强代码的健壮性,并减少因修改代码而引入错误的可能性。特别是在...

    java 解析ASN.1 编码格式cdr话单文件例子

    在IT行业中,ASN.1(Abstract Syntax Notation One)是一种标准化的数据表示语言,常用于通信协议、数据存储和软件...学习和理解ASN.1以及相关的Java库是进行此类操作的关键,这有助于确保数据的正确解析和有效利用。

    ASN.1PER编码方式以及测试程序

    这个文件可能包含C、C++、Java或其他编程语言的示例代码,展示了如何将ASN.1定义的结构转换为PER编码的字节流,以及如何从PER编码还原原始数据。代码实现通常会包含编码函数和解码函数,以及辅助函数,如计算数据...

    org.dtools.javaini-v1.1.0.jar

    本文将详细介绍`org.dtools.javaini-v1.1.0.jar`,这是一个专为Java设计的,用来处理INI配置文件的库,特别之处在于它经过修改后,增加了对UTF-8编码的支持。 原始的`org.dtools.javaini`库最初设计时仅支持ASCII...

    电力电表376.1协议java版

    电力电表376.1协议是电力行业中广泛...综上所述,电力电表376.1协议Java版的实现是一个涵盖协议解析、数据通信和系统集成等多个方面的技术任务,对于电力行业软件开发人员来说,理解和掌握这一协议的Java实现至关重要。

    ANS.1 介绍文档,JAVA代码样例,JAR包

    开发者可以通过编写Java代码来实现对ANS.1数据的序列化和反序列化。这通常涉及到以下步骤: 1. **序列化**: 将Java对象转换为ANS.1编码的字节流。这包括将对象的属性映射到ANS.1数据类型,并按照ANS.1的规则进行...

    java编码总结1

    【标题】:“Java编码总结1”主要涉及到Java编程语言中的编码问题,这在软件开发中是至关重要的。编码问题往往会导致程序出现难以预料的错误,尤其是处理多国语言或者特殊字符时。Java作为广泛使用的跨平台语言,其...

    阿里巴巴 Java 编码指南,Alibaba Java Coding Guidelines​,兼容 Idea 2023.3+

    1. **命名规范**:阿里巴巴 Java 编码指南强调了清晰、一致的命名规则。类名应全大写,使用驼峰式命名(如 MyClass)。方法名和变量名应首字母小写,同样采用驼峰式命名(如 myMethod)。常量应全大写,单词间用...

    Java编码规则.pdf

    Ambler对Java编码规则进行了详细的介绍和解释,并提供了许多实际案例和经验总结。该白皮书的内容涵盖了Java编码的各个方面,包括变量命名、代码格式、注释、错误处理、安全性、性能优化等等。 Java编码规则的重要...

    JAVA编码规范.doc

    JAVA 编码规范是指导开发人员编写高质量、可读性...综上所述,JAVA编码规范是开发过程中不可或缺的一部分,它涵盖了从文件结构到代码细节的方方面面,旨在提升代码质量,确保团队合作的顺畅,同时降低长期维护的成本。

    Java编码规范.doc

    总之,遵循Java编码规范能够帮助开发者编写出高质量、易于理解和维护的代码,从而提高项目的成功率和团队的生产力。这份文档作为指南,不仅适用于东软集团,也适用于任何希望提升Java开发标准的组织和个人。

    java编码规范考试题答案.doc

    "java编码规范考试题答案" 一、Java编码规范考试题答案 本文档涵盖了Java编码规范的各种方面,包括集合类、线程、对称密码算法、异常处理、命名规范、随机数生成、压缩文件解压、安全编程规范、操作系统登录用户名...

    ASN.1编码规则详解(最全最经典).pdf

    ### ASN.1编码规则详解 #### 1. ASN.1简介 ##### 1.1 ASN.1概述 ASN.1(Abstract Syntax Notation One)是一种国际...通过对ASN.1及其编码规则的深入了解,我们可以更好地理解和应用这一强大的数据描述和传输机制。

    java编码主要用于java编码

    以下是对Java编码相关知识点的详细说明: 1. **Java语法基础**:Java是一种面向对象的语言,其语法结构包括类、对象、包、接口、继承、多态等概念。基础语法包括变量声明、数据类型(如整型、浮点型、字符串型等)...

    java编码规范.zip

    本压缩包“java编码规范.zip”提供了华为版的编码规范和一个详细的Java代码规范版本,旨在帮助开发者遵循一致的规则,编写出易于阅读、维护的高质量代码。 首先,我们来看华为版的Java编码规范。华为作为全球知名的...

    Java文件编码转换源码

    因此,理解各种编码之间的关系,以及如何在Java中有效地进行转换,对于开发跨平台的软件尤其关键。 最后,虽然这个示例代码没有涵盖所有可能的编码转换情况,但它提供了一个基础框架,可以根据需要扩展以支持更多...

    tlv的java编码和解码

    总之,Java中的TLV编码和解码涉及到数据结构的表示和转换,熟悉这种编码方式对于理解和处理通信协议、序列化数据等方面都有很大帮助。结合`ber-tlv`资源,开发者可以快速地在Java项目中实现自己的TLV处理功能。

    Java编码规范精简版本.doc

    ### Java编码规范精简版本知识点解析 #### 一、为何制定编码规范? 1. **维护成本**: 软件在其整个生命周期中,大约80%的成本都集中在维护阶段。因此,良好的编码规范能够显著降低这部分成本。 2. **人员变动**: ...

    ASN1 UPER 编码.zip

    这些示例代码可以帮助初学者理解如何将ASN1规格转换为UPER编码的实际操作,从而加深对这一编码规则的理解。通过阅读和分析这些代码,你可以学习到如何处理不同类型的数据,以及如何构建和维护一个完整的编码流水线。...

    香农编码 Java 代码

    在这个Java代码实现中,我们首先需要理解香农编码的几个关键步骤: 1. **计算概率**:对于输入的信号,我们需要知道每个符号出现的概率。这是香农编码的基础,因为编码长度将根据这些概率来确定。 2. **构建哈夫曼...

Global site tag (gtag.js) - Google Analytics