2017-05-14 40 views
4

當前我正在將數據以jsons(字符串)的形式存儲在數據庫中。由於jsons包含引號,但我使用的數據庫無法在此格式中存儲引號:「它會將所有引號(如此一:」)轉換爲"查找包含某些字母/符號的字符串的特定部分,然後創建對這些部分的引用

Unity會因此不允許我反序列化JSON了,因爲現在看起來有點像這樣:

{"coins":0,"level":0,"kills":0,"deaths":0,"xp":0.0} 

,而不是像這樣:

{"coins":0,"level":0,"kills":0,"deaths":0,"xp":0.0} 

顯然,一個可能的解決方案,這將是發現含有我的JSON字符串的所有部分3210,存儲對這些部分的引用,然後將所有這些部分轉換爲一個簡單的「

因此,我會問你如何去做這件事。

回答

2

您可以使用String.replace(""","\"")String.split,但也許您需要考慮轉移到支持JSON的數據庫,如mongodb。解決這個問題的其他方向:你嘗試過放置「as」嗎?

+0

如何替換帶「\」的幫助,因爲它肯定仍包含引號? – RaZ

+0

真的很簡潔,但有幫助.... – RaZ

1

該數據庫通過爲您編碼文本做好了工作,從而防止黑客!它只是爲你做文本編碼。

您只需要在使用前對文本進行解碼。如果有雙引號是數據的一部分的機會,那麼在逆轉換編碼文本時應該小心。請參閱此MSDN資源Anti-Cross Site Scripting Library以更好地瞭解主題