[英]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);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.