【发布时间】:2012-05-23 13:22:38
【问题描述】:
我的老师说在文件服务器程序ObjectInputStreamReader是必须写的。当我问原因时,他说我对文件服务器程序很舒服。我认为这不是必要的理由。为什么不能使用InputStreamReader 或其他替代方式? ObjectInputStreamReader 比 InputStreamReader 有什么优势。
这里的客户端/服务器代码:
public class Client {
public static void main(String[] args) {
Socket s = null;
ObjectInputStream ois = null;
ObjectOutputStream oos = null;
Scanner sc = new Scanner(System.in);
String data = "";
try {
s = new Socket("localhost", 1234);
System.out.println("client is connectd");
ois = new ObjectInputStream(s.getInputStream());
String jai = (String) ois.readObject();
System.out.println("DATA from SERVER:" + jai);
oos = new ObjectOutputStream(s.getOutputStream());
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("Enter file name:");
try {
String fil = (String) sc.next();
OutputStream pw = new FileOutputStream(fil + ".new");
oos.writeObject(fil);
data = (String) ois.readObject();
pw.write(data.getBytes());
} catch (Exception e) {
System.out.println(e.getMessage());
}
System.out.println("Content of file:" + data);
}
}
谁能说出真正的原因是什么?
【问题讨论】:
-
没有像“ObjectInputSramReader”这样的类。甚至没有“ObjectInputStreamReader”。请注意,您的示例代码使用 ObjectInputStream - 这里没有“阅读器”部分。 ObjectInputStream 和 InputStreamReader 完全不同...但您还没有告诉我们您要实现什么。
标签: java inputstream objectinputstream