Java 枚举式转码

web项目中如果统一转码工作(tomcat,spring等)没有做好的话,难免会出现乱码。

网上的各种解决方案,也未必是“对症下药”

所以写了一个小工具来枚举的方式转码,看结果后用对得那个就可以了,简单粗暴!

代码分享出来,有用到的朋友可以省下不少时间

当然如果大家有更好的方法,欢迎讨论

import java.io.UnsupportedEncodingException;

public class CharTools {
	
	/** 枚举的方式将老字符进行转码
	 * @param oldStr
	 * cxy 2014-06-18
	 */
	public static void codeTest(String oldStr)
	{
		String[] oldCode={"GBK","UTF-8","GB2312","ISO-8859-1","BIG5"};
		String[] newCode={"GBK","UTF-8","GB2312","ISO-8859-1","BIG5"};
		System.out.println("=====================");
		System.out.println("原字符:"+oldStr);
		
		try {
			for(String one : oldCode)
			{
				for(String one1 : newCode)
				{
					System.out.println(one+" to "+one1+"------"+new String(oldStr.getBytes(one),one1));
				}
				//下面是针对前台encodeURIComponent的数据
				System.out.println("URLDecoder("+one+")"+ java.net.URLDecoder.decode(oldStr, one));
			}
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}
		System.out.println("=====================");
	}
	
	public static void main(String[] args) {
		CharTools.codeTest("中文");
	}

}

 有2个数组,列举了常用的编码,有需要可以自己添加。

解决java所有中文乱码集合 根据自己平时遇到的问题,以及根据资源,总结出了所有中文乱码问题,包括乱码问题的方式,分析乱码原因,以及给出几种乱码解决办法,基本上解决所有乱码问题,简单易懂,有截图。 立即下载

相关推荐

Java关于中文乱码问题的多种解决方法

Java关于中文乱码问题的多种解决方法,中文乱码过滤器

java enum 转换_java enum转换工具类

通过枚举中定义的code获取对应的枚举对象1、枚举接口public interface IEnum {/*** 获取编码** @return*/public String getCode();/*** 获取说明** @return*/public String getDesc();}2、枚举工具类public class EnumsUtil {/*** 获取枚举** @param clazz* @...

weixin_26729841的博客 594

基于LangGraph的智能报告生成平台项目分析

不知道你是否知道或者了解OpenAI and Gemini Deep Research。他们是一种能够根据输入问题进行规划、结合网络搜索获取信息并最终呈现结果的研究工具或技术。那这样research是如何实现的呢?最近刚好看到一个实现类似功能的开源项目: open_deep_search。本文将基于该项目进行代码层面剖析。

u011160113的博客 923

Java枚举(enum)详解

声明枚举 声明枚举时必须使用 enum 关键字,然后定义枚举的名称、可访问性、基础类型和成员等。枚举声明的语法如下: enum-modifiers enum enumname:enum-base { enum-body, } 其中,enum-modifiers 表示枚举的修饰符主要包括 public、private 和 internal;enumname 表示声明的枚举名称;en...

guodashen007的博客 631

告别手动操作!用Python脚本批量处理Siemens NX零件文件(导入/导出/移除参数)

本文详细介绍了如何利用Python脚本实现Siemens NX零件文件的批量处理,包括导入、导出和移除参数等操作。通过NX Open API和Python UF接口,工业设计师可以大幅提升工作效率,告别繁琐的手动操作。文章提供了完整的实战指南,涵盖环境配置、核心功能实现以及性能优化技巧,特别适合需要进行Siemens-NXUG二次开发的工程师参考。

weixin_28222493的博客 258

MTK Linux DRM分析(八)- KMS drm_crtc.c

CRTC 在 Linux DRM 子系统中是显示控制的核心,负责时序生成、模式设置和管线的调度。理解其工作原理和 API 对于进行底层图形开发、调试显示问题或 simply understanding how your graphics stack works 都至关重要。

iTom1900 1346

Java 枚举类的使用

⏹Java 枚举类的使用

菜鸟记录 3804

goahead(嵌入式Web服务器)之文件传输篇

goahead文件上传原理: 使用html form即表单提交文件上传请求,web服务器核心处理接收客户端Post过来的文件数据(注意post的是二进制数据),最后,web服务器把接收到文件数据以二进制格式写到服务器本端存储系统。 goahead文件上传步骤: 1、创建upload.html文件,内容如下: <html> <head> <meta charset="utf-8"/> <title>Upload</title> </head&g

weixin_40732273的博客 3494

Java项目中枚举转换器的使用

目录 引言 案例 1.编写通用枚举接口 2.编写对应的状态枚举实现枚举接口 3.编写转换器 4.在application.yml或.properties文件中添加以下配置 引言 在后端开发过程中,常常涉及到很多一些状态处理,理论上我们不能直接将状态值返回给前端,而是要给具体的字段描述,例如,1代表男,2代表女,你在拿到数据的1或者2这种int值时,需要告诉前端人员这代表什么,这就显得十分的麻烦,因此需要后端人员做转换的处理。 案例 此处以SpringBoot+Mybatis项..

qq_38763540的博客 2716

华为昇腾云平台适配Baichuan2大模型记录

文件发现报错:ValueError: The pipeline stage 2 in auto_parallel_context is not equal to the pipeline_stage 1 in the config.run_baichuan2_7b.yaml`,发现默认设备数是16卡,对应的pipeline_stage为2,但实际是8卡,那就改成下面的试试看。,将Baichuan2_7B_Chat.ckpt文件复制进去,将。点击镜像管理,突然发现有个2_2_0,赶紧新建了一个,成功。

羊城迷鹿的博客 2388

2025.06.18【转录组】|Ribo-seq/small RNA数据分析:rRNA和smRNA比对率统计全流程

本文介绍了一种自动化统计rRNA/smRNA比对率的方法,用于评估Ribo-seq或small RNA测序数据的质量。主要内容包括:分析原理(比对率定义、参考序列来源)、实践流程(构建索引、比对统计)以及结果可视化方法。通过Python和R脚本实现自动化处理,可生成汇总表格和柱状图。比对率结果能反映样品污染程度,建议控制在20%以下。该流程有助于快速评估测序质量,为后续分析提供可靠依据。文中还提供了常见问题解决方案和脚本示例,适用于生物信息学标准化质控环节。

1614

Java枚举,如何通过code获取枚举?

Java枚举,如何通过code获取枚举?

一名后端程序猿 7652

2026 AI Agent Harness Engineering 生态报告:开源工具链的现状与未来趋势

IEEE P2863-2025《通用人工智能自主代理技术架构与评估规范》于2025年11月正式发布,将AI Agent(通用人工智能自主代理)定义为:一种具备感知(Perception)、记忆(Memory)、推理(Reasoning)、规划(Planning)、行动(Action)五大核心能力闭环,能够在无显式指令覆盖全部环节的前提下,自主完成特定领域或开放领域复杂任务的智能实体。

AI 算法实战派 494

那些常见的单例模式

关于单例的几种方法: public class SingleDemo { //饿汉 static private SingleDemo demo=new SingleDemo(); private SingleDemo(){}; public static SingleDemo getSingleDemo(){ return demo; }...

zzasdasdasdas的博客 491

马达种类全解析:VCM、Stepper、Piezo 在手机相机中的驱动原理与工程差异

在现代手机影像系统中,马达承担着核心成像组件的动态调节任务,如自动对焦(AF)、光学防抖(OIS)以及变焦调节。目前主流采用三类驱动器件:VCM(Voice Coil Motor)、Stepper(步进马达)、Piezo(压电马达)。不同马达方案在结构复杂度、响应速度、功耗、驱动方式与模组厚度适配等方面差异显著,对成像系统的性能表现有直接影响。本文将结合最新旗舰设备的应用现状,系统剖析这三类驱动马达的工作原理、架构特点与工程应用经验,为工程实践中选型与调试提供参考。

努力分享一些人工智能、计算机视觉、影像等相关的知识干货! 3768

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

java 枚举类遍历

创建枚举类 public enum SerialNumberEnums { USABLE("待使用",1), OCCUPY("其他活动占用",2), USED("已经兑换",3); private String desc;//文字描述 private Integer code; //对应的代码 SerialNumberEnums(String desc, Integer code) { this.desc = desc; this.code = code; } publi

脑神 5353

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Java_Enum枚举转列表返回

在开发过程中,经常会遇到需要根据枚举的code获取对应name或根据name获取对应code的需求;抑或是需要根据code或name获取对应枚举对象。甚至前端需要获取下拉框中的数据项,做为查询条件传参,然后前端又不想写死,需要后端提供接口返回。

weixin_44826433的博客 3953

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

细说Java入门

参考DataWhale组队学习:Java基础 Hello World 在学习任何编程语言之前,我们都需要去写属于我们自己的hello world程序: 1.随便新建一个文件夹,存放代码 2.新建一个java文件 文件后缀名为.java Hello.java 【注意点】系统可能没有打开隐藏名 3.编写代码 public class Hello{ public static void main(String[] args){ System.out.println("Hello,World!"); }

encoding_utf_8的博客 447

JAVA 枚举类 enum

DEMO1: public class Student { //姓名 private String name; //分数类 private Grade grade; public Student(){} public String getName() { return name; } public void setName(String name) { t

java_utf8的博客 2898

Java new String getBytes 使用utf8静态枚举 StandardCharsets.UTF_8

StandardCharsets类是Java中的一个工具类,它提供了一组标准字符集常量。StandardCharsets类位于java.nio.charset包中,是一个final类,不能被继承。使用StandardCharsets类可以方便地指定字符集,例如在读取或写入文件时指定字符集,或者在网络通信中指定字符集。这个示例演示了如何使用StandardCharsets类将字符串编码为字节数组,并将字节数组解码为字符串。如果您使用的是 Java 8 或更早的版本,这些常量将不可用。在这个示例中,我们使用。

kfepiza的博客 3155

java 枚举和数值的相互转换

枚举简介 enum 的全称为 enumeration, 是 JDK 1.5 中引入的新特性,存放在 java.lang 包中 在实际编程中,往往存在着这样的“数据集”,它们的数值在程序中是稳定的,而且“数据集”中的元素是有限的。 此时枚举可以很方便的表示这样的简单的数据集 枚举和数值的相互转化 步骤:   1.首先定义一个枚举类:例如atEnum   2.在枚举类中创建一个枚举构造...

weixin_34378922的博客 1575

Java enum枚举 数据转换

//枚举类 package com.middol.supplieraudit.enums; public enum AuditStatusEnums { DFP(0,"待分配"), DSH(1,"待审核"), YSH(2,"已审核"); private Integer value; private String msg; AuditStatusEnums(Integer value,String msg){ this.value .

zyh20090823的博客 1755

有关乱码的处理---中国程序员永远无法避免的话题

为什么说乱码是中国程序员无法避免的话题呢?这个首先要从编码机制上说起,大家都是中文和英文的编码格式不是一样,解码也是不一样的!如果中国的程序员不会遇到乱码,那么只有使用汉语编程。汉语编程是怎么回事我也不大清楚,应该是前年吧,我一朋友给我介绍汉语编程,怎么不错不错?当时因为学习忙没去关注这个,等我闲了,那个朋友不弄这个,问他他也不说不大清楚,最后自己对这个学习也不了了之了。    今天我写这个不是讲...

sodabao 558

java中 foreach遍历枚举enum中的元素

public class EnumOrder { public static void main(String[] args) { for (Spiciness s : Spiciness.values()) System.out.println(s + ", ordinal " + s.ordinal()); } }

kenchow126的专栏 7万+

利用Java枚举实现策略模式

我们在使用Java的枚举时往往会结合Switch来进行判断以实现不同值的处理,但是我们知道多用switch不是一种很好的代码风格,不利用维护和适应变化,因为这不符合开-闭原则。为此一种方法是用策略模式来重构原有的枚举实现,但是很多时候确实需要用枚举的方法来实现,如一周的天数等等,这也是JDK5.0重新引入枚举的原因。Joshua Bloch在Effective Java(第二版)里提出了一...

hyxw5890的专栏 2262
上一篇: 批量修改压缩包(zip/rar)密码
下一篇: 生成自增流水号
snkcxy
博客等级 码龄19年 0粉丝 8原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值