所以我試圖簡單地編碼一個字符到一個文件,但由於某種原因,它不工作。 Here,我已經找到了示例代碼和這裏是我的代碼:編碼在Java中的字符
public class derp : MonoBehaviour{
public Char[] chars = new Char[] {'a', 'b', 'c', 'r', 't', 'h'};
void Start(){
UTF8Encoding utf8 = new UTF8Encoding();
Byte[] encodedBytes = utf8.GetBytes(chars);
FileStream stream = new FileStream(Application.dataPath+"/testing.wld", FileMode.Create);
for(int i = 0; i < chars.Length; i++){
stream.WriteByte(encodedBytes[i]);
}
stream.Close();
}
}
我跑了劇本,打開它,this是什麼文件看起來像:
我不希望任何人老能夠打開文件並編輯其中的數據。但圖片清楚地表明這是可能的。我的代碼與示例中的代碼沒有任何區別,但由於某些原因,該文件沒有編碼數據。那麼,爲什麼這不起作用呢?爲什麼不對數據進行編碼?
我雖然當我編碼的東西它使數據不可讀,它使人們因此沒有人可以讀取數據和周圍編輯?我想要一個文件不可讀,我通過編碼解決了這個問題?你告訴我數據是編碼的,但是當我將它打印出來存儲到文件中時,它不是。您可以打開該文件並輕鬆更改其中的內容,因爲它是可讀的。我雖然這將是一些瘋狂的非人類可讀的字符,從而使數據不可編輯,除非你使用我的程序。 – MrSplosion 2012-02-05 00:54:20
你把「編碼」和「加密」混淆了。你想要的是加密。查看我的帖子,或查看http://danielmiessler.com/study/encoding_vs_encryption/ – compilererror 2012-02-05 00:58:35
@MrSplosion:恐怕你的期望大體上完全錯誤。我想,你應該參考關於信息處理和文本編碼基礎的一些文獻。使竊聽者無法讀取數據的過程稱爲「加密」,這是一個完全不同的領域。 – 2012-02-05 00:59:27