日期:2014-05-19  浏览次数:20951 次

读txt文件转码问题
今天遇到一个问题,我使用struts上传文件 在读txt文件时候有4种编码格式ANSI、UTF-8、Unicode和Unicode big endian,但是我读数据想入到数据库中,出现乱码,数据库是UTF-8格式,请那位高手指教下,当我以4种不同的方式,写到数据库中时,怎么样转码(前提是文本都是中文)
还有个问题是,我文本选择UTF-8格式读到数据库中时(UTF-8),为什么读文本文件第一行第一个汉字入到数据库中时,怎么入到数据库第一个汉字前面有个问号,怎么解决这问题啊
谢谢,那位高手帮吗解决下

------解决方案--------------------
1 手工转码
2 下面是一个例子

Java code
BufferedReader buf = new BufferedReader(new InputStreamReader(new FileInputStream("e://test.xxx"), "UTF-8"));
       String line = null;
       int i = 0;
       while ((line = buf.readLine()) != null) {
           if (i == 0) {
               line = line.substring(1);// 去掉文件头
               i++;
           }
           String[] testString = line.split(",");
           for (int j = 0; j < testString.length; j++) {
               System.out.print(testString[j]+" ");
           }
           System.out.println();
       }
       buf.close();