java字节流读txt文件出现乱码怎么解决?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java字节流读txt文件出现乱码怎么解决?相关的知识,希望对你有一定的参考价值。
要求用两个字节数组
用字节流
是不是要指定编码格式?
首先获得一个文件句柄。File file = new File(); file即为文件句柄。两人之间连通电话网络了。接下来可以开始打电话了。
通过这条线路读取甲方的信息:new FileInputStream(file) 目前这个信息已经读进来内存当中了。接下来需要解读成乙方可以理解的东西
既然你使用了FileInputStream()。那么对应的需要使用InputStreamReader()这个方法进行解读刚才装进来内存当中的数据
解读完成后要输出呀。那当然要转换成IO可以识别的数据呀。那就需要调用字节码读取的方法BufferedReader()。同时使用bufferedReader()的readline()方法读取txt文件中的每一行数据哈。
给你个解决方法,我用的JDK1.5,完全解决了你的需求,代码如下:
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class Start
public static void main(String[] args)
File fileS = new File("E:/123.txt");
if(!fileS.exists())
System.out.println ("找不到指定文件");
return;
FileInputStream fileIS = null;
try
fileIS = new FileInputStream(fileS);
byte[] byt = new byte[2];
int data = fileIS.read(byt);
for (; data != -1 ; )
int a=byt[0];
int b=byt[1];
if((a >= 0 && a <= 127) && (b > 127 || b < 0))
System.out.print ((char)a);
data = fileIS.read();
byt[0] = (byte)b;
byt[1] = (byte)data;
String str = new String(byt);
System.out.print (str);
data = fileIS.read(byt);
System.out.println ();
catch(FileNotFoundException ex)
ex.printStackTrace();
catch(IOException ex)
ex.printStackTrace();
finally
if (fileIS != null)
try
fileIS.close();
catch(IOException ex)
ex.printStackTrace();
参考技术B 简单 删除就好了
请大神帮忙解决一个用java解压缩一个zip压缩格式字节流中文内容乱码问题!
问题是这样的:我有一个现成的服务器程序,通过android程序来访问那个服务器,协议是TCP,服务器端发来的是按GB2312这个字符集的字节流,且在服务器端用zip格式压缩,现在的问题是:如果服务器端发来的没有中文内容,android这边解压缩很正常,如果服务器端发来的内容含有中文,这边除了非中文外,所有中文都是乱码,且我找了很多资料,也都没有解决,使用的关键代码是:
ByteArrayInputStream in = new ByteArrayInputStream(newbytes);//将字节数组转成输入流
ZipInputStream zipis=new ZipInputStream(in);
zipis.getNextEntry();//将输入流定位在当前entry数据项位置
DataInputStream dis=new DataInputStream(zipis);
//用ZIP输入流构建DataInputStream
str=dis.readLine();//
dis.close();//关闭文件
outSteam.close();
return str;
我想肯定是字符集的问题,但找了很多资料,都没有解决掉,请哪位大神,帮忙解决一下
注:我按网上有人说的修改zipinputstream.java这个类,自行添加一个字符集参数,没有成功,原因可能是,我现在用的java1.7上的zipinputstream里没有他们说的几个关键方法,且我看这个类里有一个可以带字符集参数的方法,但在我的开发环境里,怎么也找到不这个带参数的方法,不知是怎么回事儿
以上是关于java字节流读txt文件出现乱码怎么解决?的主要内容,如果未能解决你的问题,请参考以下文章