繁体   English   中英

将图像(* .jpeg,*。png等)文件从客户端传输到服务器

[英]Transfer Image (*.jpeg, *.png etc) file from client to server

在我的Java应用程序中,我想将一些图像从客户端传输到服务器。 我正在使用套接字将客户端与服务器连接。 当我从客户端到服务器传输字符串但无法传输图像文件时,它可以正常工作。

我在用

BufferedInputStream
缓冲输出流

用于传输字符串。

我知道要传输文件,我需要使用FileInputStream作为:

BufferedInputStream bis bis = new BufferedInputStream(new FileInputStream("111.JPG"));

但是我不知道我到底需要写些什么。 因此,请通过一些示例代码给出答案。

您应该将图像转换为字节。 您可以使用此功能。

static byte[] ImageToByte(System.Drawing.Image iImage)
{
MemoryStream mMemoryStream = new MemoryStream();
iImage.Save(mMemoryStream,
System.Drawing.Imaging.ImageFormat.Gif);
return mMemoryStream.ToArray();
}

您可以在服务器程序中调用此函数。

Bitmap tImage = new Bitmap(Image URL goes here);
byte[] bStream = ImageToByte(tImage);

while (true)
{
TcpClient client = server.AcceptTcpClient();
Console.WriteLine("Connected");
while (client.Connected)
{
NetworkStream nStream = client.GetStream();
nStream.Write(bStream, 0,
bStream.Length);
}
}

互联网上已经有很多示例:
这里
这里
等等

请考虑下次使用Google。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM