【发布时间】:2011-09-02 12:34:16
【问题描述】:
我需要通过一些 sockt(比如说端口 8478)和按摩(在文件传输的中间部分)将文件从服务器发送到客户端(类似“hi”或“你达到你的 limt”或“你达到到你的 50% 限制”)。
现在只发送文件,我很容易使用 客户端和服务器端的 BufferedInputStrear 和 BufferedOutputStream。 现在我怎样才能在同一端口(8478)的文件传输中发送按摩。
谢谢大家..
这就是我传输文件的方式
服务器端:
BufferedInputStream d=new BufferedInputStream(new FileInputStream(s));
BufferedOutputStream outStream = new BufferedOutputStream(cs.getOutputStream());
ObjectOutputStream msgoutStream = new ObjectOutputStream(cs.getOutputStream());
byte buffer[] = new byte[1024];
int read;
while((read = d.read(buffer))!=-1)
{
//msgoutStream.writeUTF("hjlhkhjk");
outStream.write(buffer, 0, read);
outStream.flush();
}
客户端:
byte buffer[] = new byte[1024];
int read;
int f=0;
while((read = d.read(buffer))!=-1)
{
if(ifContinun)
{
System.out.println("strat write to file...");
}
//String s1=msgInPutStream.readLine();
//String s2=msgInPutStream.readUTF();
outStream.write(buffer, 0, read);
outStream.flush();
if(ifContinun)
{
System.out.println("after write to file...");
ifContinun=false;
}
}
【问题讨论】:
标签: java sockets file-transfer client-server