Я пытаюсь отправить другое изображение, но изображение в моем телефоне не открывается.Я подтверждаю, что данные были отправлены. C # является сервером для отправки изображения, а AndroidStudio считается клиентом для получения изображения.
C #
String filename = "C:\\Users\\YK Chen\\Desktop\\EE.png";
FileInfo fileInfo = new FileInfo(filename);
byte[] buffer = new byte[fileInfo.Length];
using(FileStream stream = fileInfo.OpenRead())
{
stream.Read(buffer, 0, buffer.Length);
}
byte[] datasize = new byte[4];
datasize = BitConverter.GetBytes(buffer.Length);
clientSocket.Send(datasize);
clientSocket.Send(buffer, buffer.Length, SocketFlags.None);
MessageBox.Show("Send!");
AndroidStudio
if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED))
{
File sdFile = Environment.getExternalStorageDirectory();
String path = sdFile.getPath() + File.separator + "Receive";
File dirFile = new File(path);
if(!dirFile.exists()){
dirFile.mkdirs();
}
File bmpFile = new File(path, filename);
BufferedInputStream bis = new BufferedInputStream(socket.getInputStream());
BufferedOutputStream os = new BufferedOutputStream(new FileOutputStream(bmpFile));
byte[] data = new byte[1024*5];
int len= -1;
while ((len =bis.read(data) ) != -1) {
os.write(data,0,len);
}
bis.close();
os.flush();
os.close();
socket.close();