java MyCP -xt XXX1.bin XXX2.txt 用來二進制文件把轉化爲文本文件(內容爲十進制數字)java
從指定文件讀取字符串型變量,根據命令行輸入的「-tx」或「-xt」判斷,將十進制轉爲二進制或將二進制轉爲十進制,再輸出。git
import java.io.*; public class MyCP { public static void main(String args[]) { String choose = args[0]; //得到第一個參數 String File1 = args[1]; //得到第二個參數:文件名 String File2 = args[2]; //得到第三個參數:文件名 File sourceFile = new File(File1); //讀取的文件 File targetFile = new File(File2); //寫入的文件 int ch = 0; String result = ""; //轉換結果 if (choose.equals("-tx")) { ch = 1; } else if (choose.equals("-xt")) { ch = 2; } //參數判斷 else { System.out.println("輸入參數錯誤!"); System.exit(0); } //若是參數輸入錯誤,退出程序 try { FileWriter out = new FileWriter(targetFile); //指向目的地的輸出流 FileReader in = new FileReader(sourceFile); //指向源的輸入流 BufferedReader infile = new BufferedReader(in); BufferedWriter outfile = new BufferedWriter(out); //緩衝流 String number = infile.readLine(); if (ch == 1) { int n, temp = Integer.parseInt(number); for (int i = temp; i > 0; i = i / 2) { if (i % 2 == 0) { n = 0; } else { n = 1; } result = n + result; } } else if (ch == 2) { result = Integer.valueOf(number, 2).toString(); } outfile.write(result); outfile.flush(); outfile.close(); } catch (IOException e) { System.out.println("Error " + e); } } }
java MyCP -tx XXX1.txt XXX2.bin
ide
java MyCP -xt XXX1.bin XXX2.txt
測試
1.問題:當在idea中運行的時候,出現了這個問題。
解決方案:詢問同窗發現也有這種狀況,具體緣由是什麼不清楚,可是在虛擬機中能夠運行。
2.問題:第一次在虛擬機中運行出現了沒法加載主類。
解決方案:最開始把編譯出來的文件和txt與bin分開了,幫他們放一塊兒時又能夠了。idea