易截截图软件、单文件、免安装、纯绿色、仅160KB

java字符编码原理浅析

本周遇到一个java乱码问题,于是对java的编码问题做了一些实验和了解。简单分析如下:
先看下如下代码:
import
java.io.UnsupportedEncodingException;
public
class
CharSetTest {

public
static
void
main(String[] args)
throws
UnsupportedEncodingException {
String test =
"
篮球
"
;

byte
[]
defaultResult = test.getBytes();

for
(
byte
e : defaultResult) {
System.
out
.print(e
+
" "
);
}
System.
out
.println(System.
getProperty
(
"file.encoding"
));
System.
out
.println(
"test="
+ test);
}
}
1.执行 javac CharSetTest.java,能正常编译,但是得到如下警告:
CharSetTest.java:5: warning: unmappable character
for encoding ASCII
        String test = "????";
分析一下为什么会这样呢?对于java编译器来说,CharSetTest.java就是一个文本文件,java编译器要解析
这个文本文件并编译生成.class文件。分析了下原因大概是这样的:CharSetTest.java一定是以某一种编码格式来存储的,所以java编
译器一定要知道该文本文件时用什么来编码的,如果没有指定就用默认认为文件的编码格式是”
ANSI_X3.4-1968”(不同环境可能不一样),所以就会发现无法解释的中文而出现了乱码。
那么以上问题该如何解决,就是要在编译的时候告诉编译器,需要编译的java文件的编码格式,否则编译器有可能遇到不能理解的字符就当做乱码处理了。由于
CharSetTest.java是GBK格式的,所以通过如下命令完成:
Javac CharSetTest.java –encoding=GBK。
2. 通过执行Javac CharSetTest.java –encoding=GBK,已经能得到正确的class文件了,但是执行
java  CharSetTest,结果如下:
63 63 ANSI_X3.4-1968
test=??
那么既然已经正确编译了,为什么得到的输出结果还会是乱码呢?前面已经可以肯定.class文件里面存放的中文字符串是正确的了,那原因肯定是在JVM
从.class文件读取这个字符串字节流并构建String对象的时候采用了错误的字符编码来构建字节流。进而导致从JVM输出字符串的字节流到我们控制
台的时候,出现乱码。那么很显然,我们必须告诉jvm我们控制台的编码,或者我们希望它采用什么字符编码来构建字节流。如果没有告诉jvm,那么文件的编
码格


相关文档:

如何在Oracle中使用Java存储过程 (详解)

其实,这篇短文,我早就应该写了。因为,java存储过程今后在各大数据库厂商中越来越流行,功能也越来越强大。这里以Oracle为例,介绍一下java存储过程的具体用法。
一、如何创建java存储过程?
通常有三种方法来创建java存储过程。
1. 使用oracle的sql语句来创建:
e.g. 使用create or replace and compile java source ......

jct 模板通过json 从java 之间得到值的一个简单例子

0.本例子是基于jQuery的
1.引入jct包
<!-- 引入jct包 -->
<script type="text/javascript" src="${ctx }/js/jct.js"></script>
<script type="text/javascript" src="${ctx }/js/dateutils.js"></script>
2.通过ajax 传递参数给java
 &n ......

java笔试题总结与大家分享

java试题
http://202.201.112.11/jpk/apply/teacher/preface/53/test123/test3/exam.htm
1.接口中方法的前面有哪些修饰符
 访问权限 返回值类型 是否静态 是否抽象
2.以下哪个为真
  Interger a = new Interger(9);
  Interger b = new Interger(9);
  Long c = New Long(9)
-----
&nbs ......

java数据库连接


MySQL:
String Driver="com.mysql.jdbc.Driver"; //驱动程序
String URL="jdbc:mysql://localhost:3306/db_name"; //连接的URL,db_name为数据库名
String Username="username"; //用户名
String Password="password"; //密码
Class.forName(Driver).new Instance();
......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号