Hola el ejercicio que tengo que realizar es lo siguiente:
He de crear un fichero de texto, en el que dentro hay escrito lo que se quiera, entonces el sevidor copia lo que hay dentro escrito de ese archivo y lo escribe en otro archivo que él crea.
Entonces mi problema es que en el archivo original tengo escrito esto:
y en el archivo que crea el servidor aparace esto:
entonces me gustaria si alguien me pudiera ayudar a corregir ese error(que se lean y escriba los saltos de linea), y que en el archivo que crea el servidor , salga escrito dentro de él lo mismo que en el archivo original
Aqui dejo el codigo del cliente y servidor:
cliente:
Código:
import java.net.*;
import java.io.*;
class clientedos {
public static void main(String args[])throws Exception{
Socket s;
PrintWriter out;
BufferedReader br;
InetAddress destino = InetAddress.getLocalHost();
String texto = "", lectura;
try {
s = new Socket(destino,8080); //host servidor
FileReader f = new FileReader("C:\\Users\\DAVID\\Desktop\\ff.txt");
br = new BufferedReader (f);
while((lectura = br.readLine())!=null)
texto += lectura;
out = new PrintWriter (
new OutputStreamWriter(s.getOutputStream()));
out.println(texto);
out.println("/.");
out.close();
s.close();
} catch (IOException e) {
System.out.println(e);
}
}
}
servidor:
Código:
import java.net.*;
import java.io.*;
class servidordos {
public static void main(String args[])throws Exception{
Socket s;
ServerSocket serv;
PrintWriter out;
BufferedReader in;
BufferedWriter bw;
String texto = " ";
do{
try {
serv = new ServerSocket(8080);
s = serv.accept();
in = new BufferedReader (
new InputStreamReader(s.getInputStream()));
texto = in.readLine();
File f = new File("C:\\Users\\DAVID\\Desktop\\goltv.txt");
FileWriter fw = new FileWriter(f);
bw = new BufferedWriter(fw);
out = new PrintWriter(bw);
out.println(texto);
out.close();
in.close();
s.close();
serv.close();
} catch (IOException e) {
System.out.println(e.toString());
}
}while(!texto.equals("/."));
}
}