Wie können wir Daten in eine Datei auf Basis von URL schreiben?
-
13-10-2019 - |
Frage
try
{
URL url = new URL("http://localhost:8080/Files/textfile.txt");
URLConnection connection = url.openConnection();
connection.setDoOutput(true);
OutputStream outStream = connection.getOutputStream();
ObjectOutputStream objectStream = new ObjectOutputStream(outStream);
objectStream.writeInt(637);
objectStream.writeObject("Hello there");
objectStream.writeObject(new Date());
objectStream.flush();
objectStream.close();
}
catch (Exception e)
{
System.out.println(e.toString());
}
i am unable to write text into the file(textfile.txt) . i dn't know wat the problem is?? can anyone explain how to write data to a text file based on url information ...
Lösung
Entweder müssen Sie schreiben, um die Datei lokal (nach dem Download) und dann per FTP laden Sie es erneut. Oder wenn Sie es auf Ihrem Server befindet ist, müssen Sie es als File
Objekt zu öffnen und dann Schreib- / append, um es mit einem BufferedWriter
zum Beispiel.
try {
BufferedWriter out = new BufferedWriter(new FileWriter("outfilename"));
out.write("aString");
out.close();
} catch (IOException e) {
// Handle exception
}
Sie müssen den absoluten / relativen Pfad von Ihrem Server-Sicht verwenden, um die Datei zu schreiben, um es zu finden!
EDIT: Sie können mehr über Remote-Zugriff auf Dateien lesen in Java HIER .
Andere Tipps
Nie verwenden Dinge wie
System.out.println(e.toString());
Auf diese Weise kann den Stack-Trace verlieren und die Ausgabe geht an stdout, wo es in der Regel zu stderr gehen sollte. Mit
e.printStackTrace();
statt. Btw., Unnötig Ausnahmen überall ist ein großes Problem in größeren Programmen zu kontrollieren, google out „schlucken Ausnahmen“ mehr zu erfahren.