2013-10-28 41 views
0

我很確定這是一個已經有人提出的問題,但我也確定這有一個概念名稱,我不知道,我想知道,因此我可以多研究一下。防止設置文件作爲記事本中的文本被打開

我的java應用程序有一些安裝文件,可以打開一個txt文件來手動修改。我想阻止這些文件被手動打開(我的意思是通過資源管理器和記事本),我只希望它們能夠通過我的應用程序的GUI進行修改。人們如何處理這件事?某種形式的密碼爲每個設置文件?

+0

如何以二進制格式存儲這些文件而不是文本?即具有設置數據結構,可以將其「序列化」成二進制文件並從文件恢復回內存。 – kiruwka

+0

所以,這意味着在我的應用程序中,我可以簡單地將它們讀爲普通文件,但在其不可能之外? –

+0

是的,如果您將文件另存爲二進制文件,則使用例如'FileOutputStream'並寫入您要存儲的所有字節。 – kiruwka

回答

1

我不認爲有可能阻止打開文件。但您可以將它們放入系統文件夾%PROGRAMDATA%。不完全是你要求的,但至少隱藏它們來自「普通」用戶,這是一種常見做法。

您也可以用二進制格式序列化和反序列化您的安裝文件。

另一種方法是 - 像你提出的那樣 - 嘲笑他們。

+0

所以,例如,如果我嘗試從遊戲配置文件打開一個文件,而我在裏面看到的是一堆隨機字符無法讀取,那意味着文件被加密了? –

+0

或二進制格式 – t7bdh3hdhb

+0

在你的答案中建議二進制格式,我可以接受它,它的公平程度還不夠,謝謝你的額頭 –

1

這取決於你想要它有多安全。如果您只是想阻止臨時用戶進行修改,則可以通過對文本進行某種混淆來阻止人們(例如具有已知值的xor),或者可以壓縮每個文件。

如果你想讓它更安全,這樣即使有些聰明的人也不能進入他們,那麼你會想要加密文件。你可以搜索「Java加密」來查看人們去過哪裏。

相關問題