Új hozzászólás Aktív témák
-
nro
újonc
Sziasztok!
Olyan problémám, hogy egy elosztott rendszert írok és valamiért nem működik a fájlletöltés után a szöveg küldése.
Az üzenetek küldésére Scannert és PrintWritert használok, míg a fájlküldéshez BufferedInputStream-et és BufferedOutputStreamet.
Itt a szerver kódja (in a Scanner, out a PrintWriter):
File file = new File(in.nextLine());
BufferedOutputStream bos = new BufferedOutputStream(myClientSocket.getOutputStream());
FileInputStream fis = new FileInputStream(file);
BufferedInputStream bis = new BufferedInputStream(fis);
int n = -1;
byte[] buffer = new byte[8192];
while ((n = bis.read(buffer)) > -1) {
bos.write(buffer, 0, n);
}
bis.close();
bos.flush();
bos.close();
out.println("Hello");Itt a kliens kódja (out a PrintWriter, in a Scanner):
out.println(fileName);
out.flush();
try {
BufferedInputStream bis = new BufferedInputStream(requestSocket.getInputStream());
FileOutputStream fos = new FileOutputStream(fileName);
int n;
byte[] buffer = new byte[8192];
while ((n = bis.read(buffer)) > 0) {
fos.write(buffer, 0, n);
}
fos.flush();
fos.close();
System.out.println(in.nextLine());
} catch (IOException ex) {
System.err.println(ex);
}Ha nem zárom be a BufferedOutputStreamet, akkor nem "menti le".
A vágyam az az lenne, ha miután lementem a fájlt ugyanazon a porton keresztül tudjak további üzenetek küldeni PrintWriterrel és Scannerrel.
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Google Pixel topik
- Amlogic S905, S912 processzoros készülékek
- sziku69: Fűzzük össze a szavakat :)
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Autós topik
- Szép órával jubilál a Huawei Watch
- Diablo IV
- Google Chromecast topic
- Utánajártunk, hogy melyik memória mennyire drágulhat
- Végleg lemondott a régi gépekről a Steam
- További aktív témák...
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

