Java 写 Access 乱码
Java 写 Access
1. 在本地中文计算机上,发现写中文到access上,出现乱码。读的时候也是乱码。
2. 读的时候,不能读string,先使用byte读出来,然后再创建GBK编码的String.
3. 参考读,可能写的时候也是编码转换的问题,所以一直在做编码转换,可是无论如何也不能正确写入。
4. 考虑是否是环境有问题。从netbeans6.7.1转移到了eclipse3.4.2。问题依旧。
5. 到另外的机器上去试了,有和我机器现象相同的,也有正常的。既然有正常的,那么还是可能有些设置。
6. 分析了把工程转为UTF-8或者GBK实际没有关系,因为这只是影响javac的编译。只要在javac的时候指定了encoding,那么编码就没有关系了。可是,工程指定为GBK的时候,测试程序还是正常了,但是,我用的swing,其前端是UTF-8的,而且我的程序需要考虑中日文,所以我还是要使用UTF-8。
7. 发现控制台上直接使用java命令,可以正常,但是同样的到IDE里面就不正常。控制台的编码是GBK。
8. Eclipse里面,工程是UTF-8,但是Run configurations->common->console encoding里面,有一个设置,把它设为GBK就OK了。
9. Netbeans里面没有这个,开始考虑在netbeans.conf里面使用-J-Duser.language这样的参数,但是其实我的IDE本来就是中文了,这样做没有意义。
10. 最后发现其实是本地JVM的参数,在netbeans里面的属性->运行->VM选项里设置“-Dfile.encoding=GBK”就OK了。
总结:
感觉就是有2个编码需要我们考虑,一个是编译时候的,一个是运行时候的。编译时候的其实影响比较小,主要就是为了国际化的注释等等;还有运行时,感觉就是ODBC写Access需要使用中文的环境。
相关文档:
一、运行class文件
执行带main方法的class文件,命令行为:
java <CLASS文件名>
注意:CLASS文件名不要带文件后缀.class
例如:
java Test
如果执行的class文件是带包的,即在类文件中使用了:
package <包名>
那应该在包的基路径下执行,命令行为:
java <包名>.CLASS文件 ......
装饰器模式主要应用于这样一种场合,当你已经有了一个目标类,并且它是一个接口的实现类,在对该类使用的后期发现需要对相应接口程序的前后做更多的处理,这些处理是变化的,不固定的,但是有不能去修改这个目标类,这时我们就可以使用这个装饰器模式:
比如,我们已经有一个付款的方法 payMoney(long count) ,这个方法只 ......
程序没什么含金量,高手莫笑。
package first;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.*;
import ......
本人之前做的项目中积累常用的时间方法,贴出来与大家共享,如果哪里有错误或更有效的方法请尽管拍砖!哈哈
Java代码
package com.hefeng.test;
import java.text.DateFormat;
import java.text.ParsePosition;
import&n ......