下面是檔案加密系統的介面:
該檔案加密系統共有加密檔案、解密檔案、查詢某檔案是否被加密、顯示所有的加密檔案資訊4個功能。
大致工作流程:
程式啟動後,首先開啟固定的已加密檔案資訊儲存檔案,讀取檔案資訊存在到鍊錶中。然後等待使用者輸入命令。
如果使用者輸入1:程式請求輸入待加密檔案檔名,如果使用者輸入錯誤的檔名,程式顯示提示資訊後返回主介面,如果使用者輸入正確的檔名,開啟檔案讀取內容到快取進行逐字節加密,加密完成寫入到乙個臨時檔案,等待所有的檔案內容均被讀出加密後再把臨時檔案內容寫回到原始檔。加密操作完成,將已加密檔名儲存到鍊錶,程式顯示提示資訊。
如果使用者輸入2:程式請求輸入待解密檔名,如果使用者輸入錯誤的檔名,程式顯示提示資訊後返回主介面,如果使用者輸入正確的檔名,程式將檔名與鍊錶中儲存的檔名進行逐個匹配,匹配失敗,程式顯示提示資訊後返回主介面,匹配成功,檔案進行解密操作,大致流程與加密操作類似。解密完成,從鍊錶中刪除該檔名,程式顯示提示資訊。
如果使用者輸入3:程式請求輸入待查詢檔案名,如果使用者輸入錯誤的檔名,程式顯示提示資訊後返回主介面,如果使用者輸入正確的檔名,程式將檔名與鍊錶中儲存的檔名進行逐個匹配,匹配成功或者失敗,程式均顯示提示資訊後返回主介面。
如果使用者輸入4:程式遍歷鍊錶,列印其中儲存的所有檔名,列印完成,程式顯示提示資訊後返回主介面。
如果使用者輸入0:程式退出執行。
**實現:
鍊錶操作 完
c 實現鍊錶操作 使用節點類構造節點 包括 建立鍊錶,顯示鍊錶,插入節點,刪除節點,查詢節點,鍊錶長度和反轉鍊錶 ifndef list h define list h include include size t using namespace std 用結構體型別表示乙個節點 class nod...
C語言鍊錶綜合操作
預處理命令 include include define len sizeof struct student define format ld,f define p format ld 5.1f n define null 0 構造結構體 struct student 構造乙個結構體型別 int n...
鍊錶操作集合 C語言
主要是給自己以後複習知識,還有進行修改優化用的 歡迎批評,其中鍊錶合併的就地合併我並未掌握,我用了新的頭結點以後要補上 首先是標頭檔案定義 ifndef andrew define andrew include include include include include define size ...