jni 文件切割合併

最近學習c++,看到不少經常使用的例子,好比文件切割,切割後後綴能夠自定義,別人就沒法從表面的一個文件看出是什麼,也沒法查看到原文件信息,只有合併後才能識別這廬山真面目c++

實現也比較粗暴,首先在應用層定義好兩個方法git

先是文件分割,寫一個測試方法,去調用定義好的 fileSplit ,傳入生成的路徑,自定義的後綴,還有切割的等份github

接着在適配器的點擊方法中去調用這個測試方法,而且彈出了一個提示,打印出文件輸出的路徑數組

 

殼子已經造好,主要代碼經過jni去調用咱們寫的C++代碼,經過C++去實現,在cpp文件中通樣定義好切割合併兩個方法app

 

首先是切割文件,獲取到咱們傳入的路徑後直接進行字符串截取,咱們以前在應用層傳入了一個私有路徑,我在私有目錄下操做,這有app卸載的時候也會跟着清除,咋不能作流氓app啊學習

這裏比較簡單,就是一個字符串截取,把路徑和文件名稱留下來,後綴換成咱們自定義的後綴,生成好切割的路徑存在數組裏測試

而後就是在這個路徑的基礎上去寫入文件,後面有項目地址,詳情請看具體代碼,這裏有一點須要注意,測試的文件是以前寫加密文件的時候寫的一個方法,生成文件加密解密,而後我是用的簽名生成的文件去切割合併的,省去了一個操做,因此須要換成你目錄的文件,或者直接運行個人項目,點擊加密文件自動生成測試文件也行加密

 

 點擊文件切割分紅了三分,自定義.s的後綴,不過提示語仍是開始的,在根目錄下,目前已經換成了私有目錄下,圖片以前作的,沒有更換,看輸出的log日誌3d

文件合併也一相似,拿到切割的完整地址(含後綴)日誌

 

 而後把文件寫入到新的文件裏,在把合併好的文件刪除

 

效果圖以下

 

能夠看到以前切割的三個文件不見了,生成了一個新的合併文件,點開內容跟以前的一致,再看日誌輸出

 

 o的k

GitHub:https://github.com/1024477951/KotlinStrong

相關文章
相關標籤/搜索