Souborová&Internet

Jiří Mareš Jiri.Mares na svt.cz
Pátek Říjen 29 08:18:42 CEST 2004


To je divne napsane a hlavne i spatne. Proc ten cyklus nenapsat nasledovne:

int read = 0;
while ((read = FIS.read(bytes)) > 0) {
   OS.write(bytes, 0, read);
}

Tp wrote:
> Zdravím,
> 
> tak jsem to nakonec udělal takhle :
> 
> public void run() {
>         
>         byte bytes[] = new byte[1024];
>         
>         try {
>             java.io.File f = new java.io.File(file);
>             java.io.FileInputStream FIS = new java.io.FileInputStream(file); // Stream k souboru
>             
>             java.net.ServerSocket serverSocket = new java.net.ServerSocket(port);
>             java.io.OutputStream OS = serverSocket.accept().getOutputStream(); // Ziska rouru ke klientovi
>             
>             // Posle soubor
>             for (long a = 0; a < (f.length() / 1024) + 1; a++) {
>                 FIS.read(bytes);
>                 OS.write(bytes);
>             }
>         } catch (java.io.IOException e) {
>             System.out.println(e);
>         }
>     } 
> 
> Na lokále (přes 1 switch) to má stabilní rychlost 240kb/s, oproti původním 8 to je příjemná změna.
> 

-- 
Jiří Mareš (mailto:Jiri.Mares na svt.cz)
ČSAD SVT Praha, s.r.o. (http://www.svt.cz)
Czech Republic


Další informace o konferenci Konference