Salve ragazzi, sono nuovo del forum.
Dovrei realizzare un prog. in Java che mi permetta di inviare file tra due computer (non in ftp) ma non sono molto ferrato in merito...
qualcuno può aiutarmi?
Salve ragazzi, sono nuovo del forum.
Dovrei realizzare un prog. in Java che mi permetta di inviare file tra due computer (non in ftp) ma non sono molto ferrato in merito...
qualcuno può aiutarmi?
Ciao e benvenuto.
Devi imparare ad usare le Socket, dovresti trovare parecchie guide in merito, fai una ricerca su google, ma prima di tutto sul sito della Sun:
http://java.sun.com/
Ciao
Windows Xp
[Java]
[PHP]Notepad++
[Fortran90-77] elf90 g77
[C++ /WinAPI] DevC++ VisualC++
Vedi ad esempio qui:
http://java.sun.com/developer/online...ng/BasicJava2/
Windows Xp
[Java]
[PHP]Notepad++
[Fortran90-77] elf90 g77
[C++ /WinAPI] DevC++ VisualC++
Grazie per le risposte!
Allora il codice realizzato dovrebbe copiare un file di testo da una macchina a un'altra ma in locale sul mio Pc va ma quando sono in LAN non ho la + pallida idea di come passare il file:
Esempio: java StampaFile file:/file.txt
Con il prog riportato visualizzo e copio il suo contenuto in un nuovo file, come faccio a fare lo stesso se il file da visualizzare è su un'altra macchina?
StampaFile.java
------------------
import java.io.*;
import java.net.*;
import java.util.*;
public class StampaFile {
public static void list (URLConnection c, String s) throws IOException {
// stampa una intestazione contenente il nome del file e la data
System.out.println(s+" on "+ new Date());
for(int i=0; i<s.length()+32; i++)
System.out.print('-');
System.out.println("\n");
BufferedReader in = open(c.getInputStream());
PrintWriter out = new PrintWriter (new FileWriter("c:/newfile.txt"));
for(int i=1; ; i++){
String line = in.readLine();
if(line == null) break;
//Stampa a video del contenuto del file di testo
System.out.println(line);
//Scrive il contenuto su un file
out.println(line);
}
out.close();
}
public static BufferedReader open (InputStream in){
return new BufferedReader(new InputStreamReader(in));
}
public static void main(String[] args) throws IOException {
URL resource = new URL(args[0]);
URLConnection connessione = resource.openConnection();
list(connessione, args[0]);
}
}
in effetti in questo modo tu ti colleghi tramite url ad un file locale
quello che dovresti fare per spedire un file, a grandi linee è
aprire il file, ad esempio con un datainputstream
File file = new File("tuofile.wtf");
FileInputStream fin = new FileInputStream(file);
DataInputStream in = new DataInputStream (fin);
copiare il contenuto del file (i byte) in un buffer
byte[] buffer = new byte[in.available()];
in.readFully(buffer);
spedire tramite socket i byte di quel buffer all'altra macchina, che li deve riassemblare in un file locale