Hallo, 
Ich habe ein Problem, und zwar wenn ich eine Datei mit Folgendem Code absende:
Geht das eigentlich richtig (Soweit ich das mit Wireshark sehen konnte).
Wenn ich aber versuche den String mit den Informationen wie Name,Dateiname und dateigrösse einlesen möchte
bekomme ich nur müll zurück.
Ich wäre sehr erfreut wenn mir einer helfen könnte 
Ich habe ein Problem, und zwar wenn ich eine Datei mit Folgendem Code absende:
Java:
Socket sender = new Socket(adress.get(index),6791);
DataInputStream dis = new DataInputStream(new FileInputStream(file));
byte[] size = new byte[(int) file.length()];
tcc.addToTextArea1("Sending File, please wait...");
dis.read(size,0,size.length);
dis.close();
ObjectOutputStream os = new ObjectOutputStream(sender.getOutputStream());
String infos = tcc.getName()+","+file.getName()+","+file.length();
os.write(infos.getBytes("UTF-8"));
os.flush();
os.writeObject(size);
sender.close();
Wenn ich aber versuche den String mit den Informationen wie Name,Dateiname und dateigrösse einlesen möchte
bekomme ich nur müll zurück.
Java:
Socket sc = ss.accept();
byte[] fileInfo = new byte[400];
sc.getInputStream().read(fileInfo);
String fileinfoUTF = new String(fileInfo, "UTF-8");
String[] split = fileinfoUTF.split(",");
System.out.println(fileinfoUTF);
int n = JOptionPane.showConfirmDialog(new JFrame(),split[0]+" offers you the File "+split[1]+ " accept?","Download File",JOptionPane.YES_NO_OPTION);
if(n == JOptionPane.YES_OPTION) {
//Accept the File
ObjectInputStream instream = new ObjectInputStream(sc.getInputStream());
File output = new File(split[1]);
output.createNewFile();
DataOutputStream bos = new DataOutputStream(new FileOutputStream(output));
byte[] myfile = new byte[Integer.parseInt(split[2])];
myfile = (byte[])instream.readObject();
bos.write(myfile,0,Integer.parseInt(split[2]));
bos.close();