先生成这个文件,然后下载。现在出现了这样一个问题,服务器是linux系统,内码utf-8,我们要求文件的格式是shift_jis
生成文件的主程序见下面,我在本机win环境下运行正常,放到linux上、汉字部分还有像全角的-全变成乱码。那位高手指点下啊。FileOutputStream outStream = new FileOutputStream(filePath);
OutputStreamWriter outWriter = new OutputStreamWriter(outStream, "Shift_JIS");
BufferedWriter outBuffer = new BufferedWriter(outWriter); StringBuilder sline = null;
try {
for (int i = 0; i < resultLength; i++) {
sline = new StringBuilder("");
if ("9".equals(rss[i][0].toString().trim())) {
getSaiken9(sline, rss, i);
} if ("1".equals(rss[i][0].toString().trim())) {
getSaiken1(sline, rss, i);
}
sline.append("\n");
outBuffer.write(new String(sline.toString().getBytes(), "Shift_JIS"));
}
outBuffer.close();
outWriter.close();
outStream.close();
} catch (IOException e) {
throw e;
}
生成文件的主程序见下面,我在本机win环境下运行正常,放到linux上、汉字部分还有像全角的-全变成乱码。那位高手指点下啊。FileOutputStream outStream = new FileOutputStream(filePath);
OutputStreamWriter outWriter = new OutputStreamWriter(outStream, "Shift_JIS");
BufferedWriter outBuffer = new BufferedWriter(outWriter); StringBuilder sline = null;
try {
for (int i = 0; i < resultLength; i++) {
sline = new StringBuilder("");
if ("9".equals(rss[i][0].toString().trim())) {
getSaiken9(sline, rss, i);
} if ("1".equals(rss[i][0].toString().trim())) {
getSaiken1(sline, rss, i);
}
sline.append("\n");
outBuffer.write(new String(sline.toString().getBytes(), "Shift_JIS"));
}
outBuffer.close();
outWriter.close();
outStream.close();
} catch (IOException e) {
throw e;
}
解决方案 »
- 捕获异常的时候 括号里面的e是什么意思啊 ?
- [求助]流的程序怎么什么都没写进去?
- 花上100分,请教一下当当网中的经典“购物车”的实现过程
- 求助thinking in java后面习题的解答!!!
- 关于ROWSET使用非常简单的问题
- 在 applet 初始化的时候连接数据库,但是在JBuilder 中可以连接到,在打开网页的时候不行。为什么??
- 使用JNI集成java和c程序效率的问题
- 关于下载的问题,高手请进
- 一个SSL的具体编程问题。不知道哪错了?(附代码)
- 为什么抽象类不能创建对象
- 无法实现窗口小图标
- Java 中在菜单栏中弹出的菜单被我所定义的一个画板(继承自Canvas)部分覆盖!求高手解答!
如果是这样那肯定就会乱码了。
答:将
outBuffer.write(new String(sline.toString().getBytes(), "Shift_JIS")); 改为:outBuffer.write(sline.toString(), "Shift_JIS"); 就行了