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

奇怪的java字符串 - Java / Java SE

在做一个文件处理的程序,在windows上调试通过后放到linux始终不好使,经过调试发现原因是在windows上面byte[]转换成字符串然后转回来大小正常,但是在linux上这个转换会导致大小发生变化,测试代码如下:

  File checkFile = new File("含有中文内容的文件");
  FileInputStream objFileInputStream = new FileInputStream(checkFile);
  byte[] alldata = new byte[(int) checkFile.length()];
  objFileInputStream.read(alldata);
  System.out.println(alldata.length);
  String strFileContent = new String(alldata);
  System.out.println(strFileContent.getBytes().length);
  String encoding = System.getProperty("file.encoding");
  System.out.println(encoding);

在windows上执行结果为:
11594
11594
GBK

在linux上执行结果为:
11594
10649
GBK

不知道此现象是为何
String strFileContent = new String(alldata);


你加个字符编码集试一下,如:

String strFileContent = new String(alldata,"gbk");


同意楼上

Java code:

System.out.println(alldata.length);
String strFileContent = new String(alldata,"gb2312");
System.out.println(strFileContent.getBytes("gb


相关问答:

java socket email 问题 - Java / Java SE

我在 java核心技术上 看了一个 利用 Java socket email的例子 可是怎么也 不成功 为什么?
源码
Java code:

package cn.com.test.email;
import java.awt.GridBagLayout;
import java.awt.event.Action ......

java windows7 MSSQL - Java / Java SE

使用java在windows7 32位下连接MSSQL。
两台机器,windows7 32位,在控制面板里面全部设置语言和区域选项都english-unitedstates
唯一区别只有在安装SQL server 2008的时候 选择的字符集不一样,
exec sp_helpsor ......

jsp新手,请教各位? - Java / Web 开发

程序如下:
<%@ page contentType="text/html; charset=GBK" %>
<%@ page language="java" %>
<%@ page import="com.mysql.jdbc.Driver" %>
<%@ page import ......

java中传值 - Java / Web 开发

怎么样将id传过去啊???是简单的传。。。在地址栏中写id号
LZ 好幽默!不知道你的意思?

是想把ID 传到ACTION ? 通过URl id=?

不够详细 别人不知道怎样帮你

../XXXXX.do?id=XXXX&id2=XXXXX

......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号