0

您好,我正在尝试通过套接字将 Java 文件对象发送到服务器,然后服务器将其存储在数据库中。目前我已经创建了一个 FileBean,它将 File 对象存储在其中。然后我使用 ObjectOutputStream 将 FileBean writeObject() 到服务器。但是,似乎 File 对象只包含对实际数据的引用,因此服务器无法实际获取数据。

有没有办法使用对象输出流之类的东西序列化要通过套接字发送的 File 对象?或者这是否需要将文件写入缓冲区并通过套接字发送?

任何帮助和代码示例都值得赞赏

4

1 回答 1

3

文件是路径,仅此而已。对于另一台机器上的服务器来说完全没有价值。

这是文件的所有状态(取自 Java 1.6 源代码java.io.File):

/**
 * This abstract pathname's normalized pathname string.  A normalized
 * pathname string uses the default name-separator character and does not
 * contain any duplicate or redundant separators.
 *
 * @serial
 */
private String path;

/**
 * The length of this abstract pathname's prefix, or zero if it has no
 * prefix.
 */
private transient int prefixLength;

您必须读取文件的内容(可能作为字节数组)并将它们发送到服务器。

于 2011-04-05T07:03:52.900 回答