MyOD(課下做業,選作)

MyOD(課下做業,選作)

代碼要求

  • 編寫MyCP.java 實現相似Linux下cp XXX1 XXX2的功能,要求MyCP支持兩個參數:
  • java MyCP -tx XXX1.txt XXX2.bin 用來把文本文件(內容爲十進制數字)轉化爲二進制文件
  • java MyCP -xt XXX1.bin XXX2.txt 用來二進制文件把轉化爲文本文件(內容爲十進制數字)

準備階段

  • 藉助以前的學習複習熟悉文件語法的運用
  • 二進制與十進制間的相互轉化,藉由網絡資源瞭解到Integer.parseInt語句不只能夠實現字符到數的轉化,還能夠藉由此語句進行其餘進制到十進制的直接轉化賦值

代碼實現

  • 建立文件輸入輸出流以及部分所需的變量
String ch = args[0];
        String s1 = args[1];
        String s2 = args[2];
        File fromfile = new File(s1);
        File tofile = new File(s2);
        String result = "";
        FileReader in = new FileReader(fromfile);
        BufferedReader infile = new BufferedReader(in);
        FileWriter out = new FileWriter(tofile);
        BufferedWriter outfile = new BufferedWriter(out);
        String number = infile.readLine();
  • 實現十進制到二進制的轉化
if(ch.equals("-tx")) {
                int n;
                int number1 = Integer.parseInt(number);
                for(int i=number1;i>0;i=i/2) {
                    if(i%2==0)
                        n = 0;
                    else
                        n = 1;
                    result = n + result;
                }
            }
  • 實現二進制到十進制間的轉化
else if(ch.equals("-xt")) {
                int number1 = Integer.parseInt(number,2);
                result = String.valueOf(number1);
            }
  • 寫入文件
outfile.write(result);
            outfile.flush();
            outfile.close();
            out.close();

運行結果截圖


碼雲連接

連接java

相關文章
相關標籤/搜索