在JSP页面中,我们通过以下的方法解决中文乱码问题,首先,在html的head标签内加入以下meta信息:
<meta http-equiv=Content-Type content="text/html; charset=gbk">
其作用是告诉客户端浏览器,这个HTML为GBK编码文件。
在JSP中加入以下的一句编译指令,定义JSP程序使用字符集为GBK:
<%@ page contentType="text/html;charset=gbk" %>
这样,保证了JSP服务器引擎将会把JSP的输出以GBK编码的形式输出。
但是在表单提交或URL传参数值时依然是按照Web容器在其内部默认的字符编码格式ISO 8859-1来进行处理的。同时,几乎所有的浏览器在传递参数时都是默认以UTF-8的方式来传递参数的。所以,虽然我们的Java源文件在出入口的地方指定了正确的编码方式,但其在容器内部运行时还是以ISO 8859-1来处理的,这样导致在提交的表单中若有中文字符,根据上文分析,在存入数据库是使用的是ISO 8859-1, 而MS SQL Sever 2000数据库默认使用的是GBK编码,这样出现的结果就是存到数据库中的数据因编码不同而出现乱码现象。
在这种情况下,我们的解决办法就是通过编码转换,使存放到数据库的数据编码格式与数据库的内部编码格式统一,即为GBK编码格式。
即将写入数据库的中文转换为从ISO 8859-1编码格式,实现方法如下:
String str=new String(dbstr.getBytes(“ISO8859-1”,”GBK”);
读出数据库的中文将其从GBK编码格式转换为ISO 8859-1编码格式,实现方法如下:
String str=new String(dbstr.getBytes(”GBK” ,“ISO8859-1”);
分享到:
相关推荐
在开发过程中,尤其是在使用ASP.NET与SQL...通过上述步骤,我们可以有效地解决在ASP.NET 2.0应用程序中向SQL Server 2005数据库插入中文时出现乱码的问题。需要注意的是,在实际应用中,还需根据具体情况灵活调整配置。
在SQL Server数据库中遇到中文乱码问题,通常是由于...总的来说,解决SQL Server中文乱码问题的关键在于理解并正确设置排序规则和使用Unicode数据类型。通过这些方法,可以确保数据库中的中文数据得以正确存储和检索。
在项目中发现这样一个问题:sqlserver数据库编码为gbk,使用python3.4+pymssql 查询,中文乱码,经过一番思考问题解决,下面把解决办法分享给大家: conn = pymssql.connect(host=192.168.122.141, port=1433, ...
【网上订餐系统/jsp/sqlsever2000】是一个基于Java Servlet和JSP技术,结合SQL Server 2000数据库实现的简单在线订餐系统。该系统主要涵盖了用户登录、注册以及购买流程的基本功能,同时也涉及到与数据库的交互和...
SQL Server是Microsoft提供的一款关系型数据库管理系统,用于存储、管理和处理数据。将PHP与SQL Server结合,可以让开发者利用PHP的灵活性和易用性来操作SQL Server的强大数据库功能。 本文将详细介绍如何使用PHP...
以下是关于如何解决php与pdo连接oracle时中文乱码问题的详细步骤及知识点。 首先,要了解Oracle数据库在处理字符数据时,涉及到字符集和排序规则(NLS, National Language Support)。NLS_LANG环境变量用于设置...
这样,你就可以像在Oracle环境中一样,使用SQL Server进行查询、更新和分析操作。 总之,将Oracle的Scott库迁移到SQL Server是一个涉及数据导出、数据类型转换、数据库结构重建和权限设置的过程。这个过程有助于...
使用MySQL Migration Toolkit数据迁移工具迁移SqlServer 2005精简版数据库到mysql数据库乱码的问题,使用ACCESS数据库编辑转换迁移