java判断字符集_Java 常用工具类---- 各种字符集编码判断与转换

import java.io.UnsupportedEncodingException;

/**

* 判断字符编码

*

* @author guyinyihun

*/

public class CharacterCodingUtil {

private final static String ENCODE = "GBK";

/**

* 判断是否为ISO-8859-1

*

* @return

*/

public static boolean checkISO(String str) {

boolean flag = java.nio.charset.Charset.forName("ISO-8859-1").newEncoder().canEncode(str);

return flag;

}

/**

* 判断是否为UTF-8

*

* @return

*/

public static boolean checkUTF(String str) {

boolean flag = java.nio.charset.Charset.forName("UTF-8").newEncoder().canEncode(str);

return flag;

}

public static boolean checkUnicode(String str) {

boolean flag = java.nio.charset.Charset.forName("unicode").newEncoder().canEncode(str);

return flag;

}

/**

*

* Title: getEncoding

*

*

* Description: 判断字符编码

*

*

* @param str

* @return

*/

public static String getEncoding(String str) {

String encode = "unicode";

try {

if (str.equals(new String(str.getBytes(encode), encode))) {

String s = encode;

return s;

}

} catch (Exception exception) {

}

encode = "ISO-8859-1";

try {

if (str.equals(new String(str.getBytes(encode), encode))) {

String s1 = encode;

return s1;

}

} catch (Exception exception1) {

}

encode = "UTF-8";

try {

if (str.equals(new String(str.getBytes(encode), encode))) {

String s2 = encode;

return s2;

}

} catch (Exception exception2) {

}

encode = "GBK";

try {

if (str.equals(new String(str.getBytes(encode), encode))) {

String s3 = encode;

return s3;

}

} catch (Exception exception3) {

}

return "";

}

/**

*

* Title: isoToutf8

*

*

* Description: ISO-8859-1 编码 转 UTF-8

*

*

* @param str

* @return

*/

public static String isoToutf8(String str) {

try {

return new String(str.getBytes("ISO-8859-1"), "UTF-8");

} catch (UnsupportedEncodingException e) {

e.printStackTrace();

return str;

}

}

/**

*

* Title: utf8Toiso

*

*

* Description: UTF-8 编码 转 ISO-8859-1

*

*

* @param str

* @return

*/

public static String utf8Toiso(String str) {

try {

return new String(str.getBytes("utf-8"), "iso-8859-1");

} catch (UnsupportedEncodingException e) {

e.printStackTrace();

return str;

}

}

/**

*

Title: unicodeToCn

*

Description: unicode 转 中文

*

* @param unicode

* @return

*/

public static String unicodeToCn(String unicode) {

/** 以 \ u 分割,因为java注释也能识别unicode,因此中间加了一个空格 */

String[] strs = unicode.split("\\\\u");

String returnStr = "";

// 由于unicode字符串以 \ u 开头,因此分割出的第一个字符是""。

for (int i = 1; i < strs.length; i++) {

returnStr += (char) Integer.valueOf(strs[i], 16).intValue();

}

return returnStr;

}

/**

*

Title: cnToUnicode

*

Description: 中文转 unicode

*

* @param cn

* @return

*/

public static String cnToUnicode(String cn) {

char[] chars = cn.toCharArray();

String returnStr = "";

for (int i = 0; i < chars.length; i++) {

returnStr += "\\u" + Integer.toString(chars[i], 16);

}

return returnStr;

}

/**

* URL 解码

*

* @return String

* @author lifq

* @date 2015-3-17 下午04:09:51

*/

public static String getURLDecoderString(String str) {

String result = "";

if (null == str) {

return "";

}

try {

result = java.net.URLDecoder.decode(str, ENCODE);

} catch (UnsupportedEncodingException e) {

e.printStackTrace();

}

return result;

}

/**

* URL 转码

*

* @return String

* @author lifq

* @date 2015-3-17 下午04:10:28

*/

public static String getURLEncoderString(String str) {

String result = "";

if (null == str) {

return "";

}

try {

result = java.net.URLEncoder.encode(str, ENCODE);

} catch (UnsupportedEncodingException e) {

e.printStackTrace();

}

return result;

}

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/421546.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

只安装和配置instantclient,用plsql developer,navicat for oracle,sqlplus连接oracle数据库 ....

环境配置&#xff1a; 1.到oracle官网下载instantclient basic包&#xff0c;解压缩到E:\oracle\instantclient_11_2&#xff1b; 2.设置环境变量 NLS_lANGSIMPLIFIED CHINESE_CHINA.ZHS16GBK&#xff08;注意中间有空格&#xff0c;这个如果不设&#xff0c;toad查询中文会是乱…

bae java上传图片_干货分享:gradle+svn轻松搞定BAE java代码上传

背景在BAE基础版和专业版上&#xff0c;java应用通过war包文件部署的时候&#xff0c;总会遇到一些小麻烦&#xff1a;BAE专业版的svn/git有单文件40M的限制&#xff0c;所以在专业版的svn/git中上传超过40M的war包(很多war包都会超过40M)是不可行的BAE基础版的svn/git&#xf…

java缺省包详解_Java在其它包中无法引用缺省包中的类

1、现象1.1 问题场景最近&#xff0c;在写测试代码时&#xff0c;将一个类(这里暂且称为ClassA)放在在缺省包中&#xff0c;也就是说&#xff0c;直接放在了src目录下&#xff0c;没有创建包。然后&#xff0c;将这个类打入了jar文件&#xff0c;提供给另外的工程(这里称为Proj…

myeclipse开发代码颜色搭配保护视力

废话不多说&#xff0c;这个东西主要是为了保护视力的&#xff0c;另外我也挺喜欢上边的颜色搭配的&#xff0c;今天特拿出来分享。直接上图 转载于:https://www.cnblogs.com/suncoolcat/p/3293895.html

linux下qt5静态编译器_笔记-linux下Qt5.3.2 静态编译

这里主要讲linux下的编译&#xff0c;windows下面比较简单依赖sudo apt-get install"^libxcb.*"libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev编译选项configure -confirm-license -opensource -static -release -no-qml-debug -qt-freetype -qt-xcb -n…

css--block formatting context

block formatting context(块级格式化上下文) 如何产生BFC&#xff1a;当一个HTML元素满足下面条件的任何一点&#xff0c;都可以产生Block Formatting Context&#xff1a; float的值不为none。overflow的值不为visible。display的值为table-cell, table-caption, inline-bloc…

java自定义注解_Java自定义注解

Java 注解(Annotation)又称 Java 标注&#xff0c;是 JDK5.0 引入的一种注释机制。Java 语言中的类、方法、变量、参数和包等都可以被标注。和 Javadoc 不同&#xff0c;Java 标注可以通过反射获取标注内容。在编译器生成类文件时&#xff0c;标注可以被嵌入到字节码中。Java 虚…

ios内购二次认证服务器代码

<?php// 获取认证结果的状态值 function get_status($arr) {while(list($key, $value) each($arr)) {if ($key "status") {return $value;}}return 10000; }// 认证 function verify($check_data, $is_sandbox 0) {$url "https://buy.itunes.apple.com/…

Java字符串压缩存储_java字符串压缩 - jeff1989的个人页面 - OSCHINA - 中文开源技术交流社区...

最近在做电信的一个用户套餐使用积量查询的接口&#xff0c;查询出的结构是一大段字符串。为了减小网络传输&#xff0c;故将字符串采用jdk自带的gzip和zip方法进行压缩。并用apache common 的base64进行压缩字符串的转码。base64的转码需要导入apache的codec包&#xff0c;不要…

android内存及内存溢出分析

一、 Android的内存机制 Android的程序由Java语言编写&#xff0c;所以Android的内存管理与Java的内存管理相似。程序员通过new为对象分配内存&#xff0c;所有对象在java堆内分配空间&#xff1b;然而对象的释放是由垃圾回收器来完成的。C&#xff0f;C中的内存机制是“谁污染…

java 通用方法_java 通用方法 代码

Class.forName("com.mysql.jdbc.Driver");String url"jdbc:mysql://localhost/bbs?userroot& passwordroot";Connection connDriverManager.getConnection(url);conn.setAutoCommit(false);String sql"insert into article values(null,?,?,no…

【原】UIView实现点击着重效果的解决方案

我们知道&#xff0c;在IOS中UIButton UIControl都有一个默认的选中效果&#xff0c;即点中后会图标会变暗&#xff0c;移开后又恢复正常。如何让UIView UIImageView等这些普通的view也实现同样的效果呢&#xff1f; 最近的一个项目里面&#xff0c;需要实现一个类似iPad/iPhon…

java oom产生原因_什么是OutOfMemoryError以及查找Java中OOM根本原因的步骤?

该OutOfMemoryError异常被抛出JVM&#xff0c;当JVM没有足够的可用内存&#xff0c;来分配。OutOfMemoryError在Exception类层次结构中属于Error类别。产生OutOfMemoryError我们将分配大量内存&#xff0c;这将耗尽堆内存的存储空间。我们将继续分配内存并达到目标&#xff0c;…

jquery在选择器中使用变量及innerText问题(转载)

转自&#xff1a;http://blog.csdn.net/shineall/article/details/7275449 最近在研究一个投票的小程序&#xff0c;写到获取每个作品的投票按钮及显示票数div的id时&#xff0c;遇到了点问题。 其中gid是一个变量&#xff0c;作为作品的唯一标识。 用dom动态更新当前票数写法如…

vs2010快捷键大全

CtrlE,D ----格式化全部代码 CtrlE,F ----格式化选中的代码 CTRL SHIFT B生成解决方案 CTRL F7生成编译 CTRL O打开文件 CTRL SHIFT O打开项目 CTRL SHIFT C显示类视图窗口 F4显示属性窗口 SHIFT F4显示项目属性窗口 CTRL SHIFT E显示资源视图 F12转到定义 CTRL F1…

猜字小游戏java方法体_java实现猜字小游戏

闲来无事&#xff0c;实现一个猜数字的小游戏&#xff0c;目的是巩固自己的基础知识&#xff0c;培养敲代码的乐趣。首先在项目中所创建的类中导包(视频教程推荐&#xff1a;java课程)import java.util.Scanner;//一个简单的文本扫描器&#xff0c;可以使用正则表达式解析原始类…

java 某天为当年第几周_JAVA 日期 一个时间段总共几周,每一天星期几

/*** 查询一个时间段的总周数和查询当前时间是第几周*paramstart*paramend*return*/private int[] selectWeekNum(Date start,Date end,int week,intflag){java.util.Calendar nowjava.util.Calendar.getInstance();java.util.Calendar c_totaljava.util.Calendar.getInstance(…

Aixs2发布webservice服务

http://www.blogjava.net/pzxsheng/archive/2012/12/21/393319.html 开发前准备&#xff1a; 1、Eclipse Java EE IDE&#xff08;Juno Service Release 1&#xff09;&#xff0c;这个必须是for J2EE 的IDE&#xff0c;因为发布webservice的插件所需。 下载地址&…

快照java开源_maven快照版本和发布版本

在使用maven过程中&#xff0c;我们在开发阶段经常性的会有很多公共库处于不稳定状态&#xff0c;随时需要修改并发布&#xff0c;可能一天就要发布一次&#xff0c;遇到bug时&#xff0c;甚至一天要发布N次。我们知道&#xff0c;maven的依赖管理是基于版本管理的&#xff0c;…

magento -- 修改文件来手动控制编译的开启和关闭

之前遇到一个情况&#xff0c;在编译开启的状态下安装了一个新插件&#xff0c;结果前后 台都不能访问了&#xff0c;这时想去找找是哪里在控制编译的开启和关闭&#xff0c;先把编译关了来保证系统不报错。按照一般的习惯后台数据或配置都是存在于数据库&#xff0c;但找遍数据…