Java 如何向套接字发送的二进制文件中添加2个整数或字符串?传输控制协议

Java 如何向套接字发送的二进制文件中添加2个整数或字符串?传输控制协议,java,android,sockets,networking,tcp,Java,Android,Sockets,Networking,Tcp,我从客户端发送一个二进制文件,如数据库或pdf文件,通过wifi连接TCP/IP。客户端是安卓平板电脑,服务器是Windows7电脑 发送数据库或pdf时,它将作为二进制文件发送。如何将2个短整数附加到此文件?例如,平板电脑序列号和文件大小 所以2个整数和文件本身一起发送 这里显示了我正在使用的代码 服务器端代码,用于从客户端接收文件: File file = new File("C:/DBfiles/database.db); FileOutputStream fostr = new Ou

我从客户端发送一个二进制文件,如数据库或pdf文件,通过wifi连接TCP/IP。客户端是安卓平板电脑,服务器是Windows7电脑

发送数据库或pdf时,它将作为二进制文件发送。如何将2个短整数附加到此文件?例如,平板电脑序列号和文件大小

所以2个整数和文件本身一起发送

这里显示了我正在使用的代码

服务器端代码,用于从客户端接收文件:

 File file = new File("C:/DBfiles/database.db);
 FileOutputStream fostr = new OutputStream(file);
 BufferedOutputsTream bostr = BufferedOutputStream(fostr);

 InutStream is = socket.getInputstream();

 byte[] buffer = new byte[bufferSize];

 while((( count = is.read())>0)&&(connected));
 bostr.write(buffer, 0, count);
客户端代码,用于将文件发送到服务器:

    File file = new File("/mnt/sdcard/database.db");
    long length = file.length();

    byte[] buffer = new byte[(int) length];

    FileInputStream fistr = new FileInputStream(file2);
    BufferedInputStream bistr = new BufferedInputStream(fis);
    BufferedOutputStream bostr = new BufferedOutputStream(socket.getOutputStream());

                int count;

                while ((count = bistr.read(buffer)) > 0) {
                    bostr.write(buffer, 0, count);
                }

您需要找到字符串的字节形式(每个字符的字节)并将它们附加到缓冲区中。我相信你说的整数就是整数的“字符串”。它不是用来求和的。

用4个字节(短2个字节)的数据创建一个字节数组,并在复制文件的while()循环之前写入缓冲区。