当前位置: 技术问答>java相关
关于ObjectInputStream类使用的问题
来源: 互联网 发布时间:2017-03-09
本文导语: 我希望从流中读取一个向量Vector,因而不能使用readLine()方法;因此我找到了ObjectInputStream类中的readObject()方法,但是在使用中遇到了问题,具体使用 如下: FileInputStream f=new FileInputStream(new File("D:\jb7\javaTEST\...
我希望从流中读取一个向量Vector,因而不能使用readLine()方法;因此我找到了ObjectInputStream类中的readObject()方法,但是在使用中遇到了问题,具体使用
如下:
FileInputStream f=new FileInputStream(new File("D:\jb7\javaTEST\t.txt"));//t.txt为任意编写的文件,内容为空
ObjectInputStream ois=new ObjectInputStream(f);//在这一步就直接跳入catch,错误是没有一个对象流
System.out.println(ois.readObject());
如下:
FileInputStream f=new FileInputStream(new File("D:\jb7\javaTEST\t.txt"));//t.txt为任意编写的文件,内容为空
ObjectInputStream ois=new ObjectInputStream(f);//在这一步就直接跳入catch,错误是没有一个对象流
System.out.println(ois.readObject());
|
// codes example:
package org.jfml.test;
import java.io.*;
import java.util.*;
public class ObjectStreamTest
{
public static void main(String[] args)
{
try
{
// resouces : vector instance and test.txt file
Vector vec = new Vector();
vec.add("1");
vec.add("2");
vec.add("3");
File file = new File("C:\test.txt");
if (file.exists())
{
file.delete();
}
// write vector instance to test.txt
FileOutputStream fos = new FileOutputStream(file);
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(vec);
// read vector instance from test.txt
FileInputStream fis = new FileInputStream(file);
ObjectInputStream ois = new ObjectInputStream(fis);
System.out.println((Vector)ois.readObject());
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
package org.jfml.test;
import java.io.*;
import java.util.*;
public class ObjectStreamTest
{
public static void main(String[] args)
{
try
{
// resouces : vector instance and test.txt file
Vector vec = new Vector();
vec.add("1");
vec.add("2");
vec.add("3");
File file = new File("C:\test.txt");
if (file.exists())
{
file.delete();
}
// write vector instance to test.txt
FileOutputStream fos = new FileOutputStream(file);
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(vec);
// read vector instance from test.txt
FileInputStream fis = new FileInputStream(file);
ObjectInputStream ois = new ObjectInputStream(fis);
System.out.println((Vector)ois.readObject());
}
catch (Exception e)
{
e.printStackTrace();
}
}
}