今天有个项目有一个功能是在程序中读取SP方提供的一个UTF-8格式编码的文件(a.bin)中的数据,我使用的方法是DateInputStream中的ReadUTF方法,大致代码如下:
DataInputStream datin = new DataInputStream(this.getClass().getResourceAsStream("/a.bin"

);
String str = "";
if(datin != null)
{
try {
str = datin.readUTF();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("读取文件抛出异常"

;
}
System.out.println("str = "+str+"..."

;
}
java.io.EOFException
at java.io.DataInputStream.readFully(Unknown Source)
at java.io.DataInputStream.readUTF(Unknown Source)
at java.io.DataInputStream.readUTF(Unknown Source)
at Test1.read(Main.java:53)
at Main.main(Main.java:15)
由于机器速度原因,异常输出和我自己写的输出的先后顺序可能有问题,但是问什么我读取不到数据呢?是我的方法有问题,还是SP提供的.bin文件编码格式有问题呢? 如果我的方法有问题,那么怎样写才对能??
顺便抱怨一下从事手机单机游戏破解的大牛门一下
