2 Stimmen

CMD-Datei aus Java kopieren

Ich möchte eine Eingabeaufforderung öffnen und einen Kopierbefehl, einige Schalter, die Quelldatei und das Ziel eingeben. Ich habe den unten stehenden Code ausprobiert, aber es scheint nichts zu passieren. Was sehe ich nicht? Was könnte ich falsch machen?

String line;

line = "cmd COPY /Y C:\srcfolder\112.bin C:\destfolder";

Process p = Runtime.getRuntime().exec(line);

p.waitFor();

0voto

Joshua Punkte 25376

Verwenden Sie die Taste , um die Windows-Version zu verwenden.

CMD /C COPY /Y C:\srcfolder\112.bin C:\destfolder

Eine Alternative: Apache Commons IO bietet eine Reihe von Bibliotheken, um Dateiübertragungen mit reinem Java zu handhaben. Sehen Sie sich insbesondere FileUtils.copyFileToDirectory(File srcFile, File destDir) an

0voto

Bill K Punkte 61074

Ahh, es sieht so aus, als hätte es jemand erwähnt, aber ich werde es klarstellen (epischerweise, weil derjenige, der es erwähnt hat, vergessen hat, seinen Backslash im Beitrag zu zitieren, so dass es wie ein Single aussieht).

Die aufgeführten Lösungen sind also besser, aber ich bin mir ziemlich sicher, dass der Grund, warum Sie scheitern, darin liegt, dass Sie in Java niemals umgekehrte Schrägstriche als Einzelzeichen verwenden können, sie sind das Anführungszeichen, sodass Sie immer \\ innerhalb einer Zeichenkette. Und für 2 Backslashes in einer Reihe braucht man, glaube ich, 6 oder 8 davon !!?!??

Habe denjenigen, der es vor mir gepostet hat, korrigiert und ihm ein +1 gegeben

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X