java获取字符串编码和转换字符串编码
2024-09-04 21:49:02
public class EncodingUtil {
// 这里可以提供更多地编码格式,另外由于部分编码格式是一致的所以会返回 第一个匹配的编码格式 GBK 和 GB2312
public static final String[] encodes = new String[] { "UTF-8", "GBK", "GB2312", "ISO-8859-1", "ISO-8859-2" }; /**
* 获取字符串编码格式
*
* @param str
* @return
*/
public static String getEncode(String str) {
byte[] data = str.getBytes();
byte[] b = null;
a:for (int i = ; i < encodes.length; i++) {
try {
b = str.getBytes(encodes[i]);
if (b.length!=data.length)
continue;
for (int j = ; j < b.length; j++) {
if (b[j] != data[j]) {
continue a;
}
}
return encodes[i];
} catch (UnsupportedEncodingException e) {
continue;
}
}
return null;
} /**
* 将字符串转换成指定编码格式
*
* @param str
* @param encode
* @return
*/
public static String transcoding(String str, String encode) {
String df = "ISO-8859-1";
try {
String en = getEncode(str);
if (en == null)
en = df;
return new String(str.getBytes(en), encode);
} catch (UnsupportedEncodingException e) {
return null;
}
}
}
最新文章
- 一分钟读懂MySQL分布式消息的处理
- crack a router
- Redis学习-开始
- HDOJ2222 Keywords Search-AC自动机
- 最长不下降子序列(LIS)
- .NET中使用log4net
- ViewPager 滑动页(三)
- ios开发——常用经典算法OC篇&;冒泡/快速
- windows下游戏服务器端框架Firefly安装说明及demo运行
- select poll epoll三者之间的比较
- c语言中3n+1溢出问题解决
- jquery源码阅读笔记一
- 云server 性能测试web压力测试
- 【Shell】Linux中分区脚本
- 2018/1/27 Zookeeper实现分布式锁
- GRUB 的配置文件解析
- .Net外包篇:我是如何看待外包的
- iframe子页面控制父页面滚动高度,直接蹦到父页面开头
- 合并两个排序的链表(python)
- mac ssh 自动登陆设置
热门文章
- Oracle 11g 概述
- 用 Flask 来写个轻博客 (35) — 使用 Flask-RESTful 来构建 RESTful API 之四
- HTML版简历
- java.lang ->; Boolean
- 在Emacs中使用plantuml画UML图
- IntelliJ IDEA 常用快捷键和技巧
- css中的文本字间距离、行距、overflow
- Echart报 [MODULE_MISS]";echarts/config的错
- Primeng UI框架ionic3 中下拉选择插件p-dropdown 插件的使用方法
- getopts举例