1、做業要求
- 編寫MyCP.java 實現相似Linux下cp XXX1 XXX2的功能,要求MyCP支持兩個參數:
- java MyCP -tx XXX1.txt XXX2.bin 用來把文本文件(內容爲十進制數字)轉化爲二進制文件
- java MyCP -xt XXX1.bin XXX2.txt 用來二進制文件把轉化爲文本文件(內容爲十進制數字)
2、做業思路(步驟)
1.題目理解
- 我剛開始認爲從二進制文件讀取數據的方式和文本文件不一樣,想的過於複雜,就一直沒有思路,最後發現直接使用輸入輸出流指向源文件和目標文件在用緩衝流處理就能完成文件的輸入輸出。
- 這樣,題目就簡化成了從指定文件讀取字符串型變量,根據命令行輸入的「-tx」或「-xt」判斷,將十進制轉爲二進制或將二進制轉爲十進制,再輸出。
2.僞代碼
將命令行輸入轉化爲三部分的字符串
用輸入流指向源文件
用輸出流指向目標文件
用緩衝流處理
判斷文本文件或二進制文件
完成進制轉換
輸出
3.產品代碼
3、運行結果
1.java MyCP -tx XXX1.txt XXX2.bin
2.java MyCP -xt XXX1.bin XXX2.txt
4、做業中的問題及解決
問題java
- 在Windows的IDEA命令行運行MyCP會出現如下錯誤
解決git
- 上網查詢後,好像是JDK的配置少了東西,因而又在虛擬機上進行嘗試,成功了,目前Windows上的解決方法還在摸索中
5、碼雲連接
6、做業感想
- 經過本次做業,我對命令行輸入及文件的輸入輸出、緩衝流的使用有了更深層次的理解,雖然還有一些地方理解不是很清楚,但仍是收穫了不少,相信以後會作的更好!