###前提・実現したいこと
コマンドライン引数にコピー元ファイル名とコピー先ファイル名を指定し、ファイルをコピーするJavaプログラムを作成しました。プログラムを起動する時は、
java FileCopy C:\Java2017\originalBinary.ods C:\Java2017\destinationBinary.ods
のように第一引数にコピー元ファイル名、第二引数にコピー先名を指定して起動しています。これを
java FileCopy C:\Java2017\originalBinary.ods C:\Java2017\destinationBinary.ods
のようにファイル名の\を2つ重ねずにプログラムが起動するように変更したいです。
現在このプログラムを起動するときは、ファイルの場所をコピーしてそれから手動で\を二つ重ねていますが、この手間を省略できればと考えています。
###該当のソースコード
Java
1コード 2import java.io.FileInputStream; 3import java.io.FileOutputStream; 4import java.io.IOException; 5 6public class FileCopy { 7 public static void main(String[] args) { 8 String originalFile = args[0]; //この部分に変更を加える必要があると思われすが、 9 String destinationFile = args[1]; //解決策が思い浮かびません。 10 try (FileInputStream fis = new FileInputStream(originalFile); 11 FileOutputStream fos = new FileOutputStream(destinationFile);) { 12 int i = fis.read(); 13 while (i != -1) { 14 fos.write(i); 15 i = fis.read(); 16 } 17 fos.flush(); 18 fos.close(); 19 fis.close(); 20 } catch (IOException e) { 21 e.printStackTrace(); 22 } 23 24 } 25}
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/03/25 06:54
退会済みユーザー
2017/03/25 07:05 編集