Java String 类型编码转换
InputStreamReader read= new InputStreamReader(new FileInputStream(file),encoding);//编码格式
String newStr = new String(oldStr.getBytes(), "UTF-8");
java中的String类是按照unicode进行编码的,当使用String(byte[] bytes, String encoding)构造字符串时,encoding所指的是bytes中的数据是按照那种方式编码的,而不是最后产生的String是什么编码方式,换句话说,是让系统把bytes中的数据由encoding编码方式转换成unicode编码。如果不指明,bytes的编码方式将由jdk根据操作系统决定。
当我们从文件中读数据时,最好使用InputStream方式,然后采用String(byte[] bytes, String encoding)指明文件的编码方式。不要使用Reader方式,因为Reader方式会自动根据jdk指明的编码方式把文件内容转换成unicode 编码。
当我们从数据库中读文本数据时,采用ResultSet.getBytes()方法取得字节数组,同样采用带编码方式的字符串构造方法即可。 669749Hs
ResultSet rs;
bytep[] bytes = rs.getBytes();
String str = new String(bytes, "gb2312");
不要采取下面的步骤。
ResultSet rs;
String str = rs.getString();
str = new String(str.getBytes("iso8859-1"), "gb2312");
这种编码转换方式效率底。之所以这么做的原因是,ResultSet在getString()方法执行时,默认数据库里的数据编码方式为 iso8859-1。系统会把数据依照iso8859-1的编码方式转换成unicode。使用str.getBytes("iso8859-1")把数据还原,然后利用new String(bytes, "gb2312")把数据从gb2312转换成unicode,中间多了好多步骤。
从HttpRequest中读参数时,利用reqeust.setCharacterEncoding()方法设置编码方式,读出的内容就是正确的了。
Java String 类型编码转换相关推荐
- java string类型时间段 转换 date类型
前言 string类型时间段 : 2019-08-30 14:01-16:01 org.apache.commons:commons-lang3 date format pattern yyyy-MM ...
- Java学习(4)—— 布尔类型、基本数据类型转换、基本数据类型和String类型的转换
布尔类型 也叫Boolean类型,boolean只允许取true和false. boolean占一个字节. 适用于逻辑运算,流程控制语句. 有默认类型,是false.但是应该声明为成员变量或是静态变量 ...
- java string类型的初始化
以下基本上是java string类型最常用的三种方法 new string()就不介绍了 基本等同于第三种 String a; 申明一个string类型的 a,即没有在申请内存地址,更没有在内存 ...
- Java 相同类型强制转换异常
Java 相同类型强制转换异常 参考文章: (1)Java 相同类型强制转换异常 (2)https://www.cnblogs.com/LoveShare/p/11785056.html (3)htt ...
- int和String类型的转换
int和String类型的转换 1. int转换为String类型 public static String valueOf(int i)返回int参数的字符串字符串表示形式.该方法是String类中 ...
- java string类型时间比较大小_Java String类型时间比较大小
Java String类型时间比较大小,写了比较时间的函数,这里总结一下. package com.zz.bridge.impl; import java.text.DateFormat; impor ...
- java string设置编码_详解Java中String类型与默认字符编码
为什么写这个 至于为什么要写这个,主要是一句mmp一定要讲,绕了一上午,晕死 Java程序中的中文乱码问题一直是一个困扰程序员的难题,自己也不例外,早在做项目时就遇到过很多编码方式的坑,当时想填来着, ...
- JAVA基本数据类型和String类型的转换
1.基本类型转String类型 语法:将基本类型的值+"" 即可,如下图 编译运行结果: 2.String类型转基本数据类型 语法:通过基本类型的包装类调用parseXX方法即可, ...
- Java String类型数据的字节长度
问题描述: 向Oracle数据库中一varchar2(64)类型字段中插入一条String类型数据,程序使用String.length()来进行数据的长度校验,如果数据是纯英文,没有问题,但是如果数据 ...
- java 编码解码_深入解析Java中的编码转换以及编码和解码操作
一.Java编码转换过程 我们总是用一个java类文件和用户进行最直接的交互(输入.输出),这些交互内容包含的文字可能会包含中文.无论这些java类是与数据库交互,还是与前端页面交互,他们的生命周期总 ...
最新文章
- 专家点评Science:中英合作揭示拟南芥三萜化合物特异调控根系微生物组
- ios 状态蓝颜色控制
- Linux驱动之内核加载模块过程分析
- ABAP选择屏幕的例子
- ThinkPHP6项目基操(8.多应用模式)
- css旋转45度_css 渐变过渡2D
- 联系服务器安装系统教程,服务器安装系统教程
- gdc服务器系统备份和还原,FANUC镜像系统如何备份及恢复
- clickhouse Aggregatingmergetree表引擎
- Broken Keyboard(悲剧文本)
- 89c51交通灯汇编语言程序,89C51单片机交通灯汇编程序
- Redis开发与运维之第八章理解内存(四)
- python处理word页码_word——插入页码
- 路飞学城之 luffy (2 )
- 色彩设计基础知识整理
- 计算机科学与技术培养计划,计算机科学与技术专业培养方案(2017版).PDF
- html5 移动端手写签名,H5移动端项目实现手写签名功能 vue实现手写签名
- xp系统开机密码忘了如何进入系统重新设置密码--win10专业版
- GoogleTest使用教程
- 环形缓冲区RingBuff的代码实现
热门文章
- [2017-08-28]Abp系列——业务异常与错误码设计及提示语的本地化
- 从“制造”之城,到“智造”标杆,长沙何以站上发展新高地?
- win10远程计算机证书错误,win10系统下遇到Wi-Fi证书错误问题的几种解决方法
- C语言(静态链接库和动态链接库)
- 3.5mm接头(耳机头)到RCA接头(莲花头)转接线制作
- box-flex实现三等分布局
- Python PTA实验课 输出星期名缩写+字典的创建
- Linux du命令和df命令
- Error: PostCSS received undefined instead of CSS string核心解决方法
- 透视投影中已知两平面的单应矩阵,能否求出这两平面的夹角?