主题:向磁盘文件读取各类数据
程序是按照书上打下来的,但运行结果不正确,文件中最后一个数据中的部分会出现乱码,并且在eclipse中运行时,控制台输出的数据只有布尔型的一个是正确的,求救!
import java.io.*;
public class File4
{
public static void main(String[] args) throws IOException
{
File file1=new File("E:\\eclipse\\workspace\\java\\dataFile.txt");
File file2=new File("E:\\eclipse\\workspace\\java\\outFile.txt");
try
{
FileInputStream fin= new FileInputStream(file1);
DataInputStream din =new DataInputStream(fin);
int i=din.readInt();
float f=din.readFloat();
boolean b=din.readBoolean();
din.close();
FileOutputStream fout= new FileOutputStream(file2);
DataOutputStream dout =new DataOutputStream(fout);
dout.writeInt(i);
dout.writeFloat(f);
dout.writeBoolean(b);
dout.close();
System.out.println("整数:"+i);
System.out.println("浮点数:"+f);
System.out.println("布尔量:"+b);
}
catch (FileNotFoundException e)
{
System.out.println(e);
}
catch (IOException e)
{
System.out.println(e);
}
}
}
import java.io.*;
public class File4
{
public static void main(String[] args) throws IOException
{
File file1=new File("E:\\eclipse\\workspace\\java\\dataFile.txt");
File file2=new File("E:\\eclipse\\workspace\\java\\outFile.txt");
try
{
FileInputStream fin= new FileInputStream(file1);
DataInputStream din =new DataInputStream(fin);
int i=din.readInt();
float f=din.readFloat();
boolean b=din.readBoolean();
din.close();
FileOutputStream fout= new FileOutputStream(file2);
DataOutputStream dout =new DataOutputStream(fout);
dout.writeInt(i);
dout.writeFloat(f);
dout.writeBoolean(b);
dout.close();
System.out.println("整数:"+i);
System.out.println("浮点数:"+f);
System.out.println("布尔量:"+b);
}
catch (FileNotFoundException e)
{
System.out.println(e);
}
catch (IOException e)
{
System.out.println(e);
}
}
}