我有一個視頻遊戲數據庫,並將視頻遊戲項存儲在varbinary(3792)列中。我試圖編寫一個程序來編輯和創建32長度的十六進制字符串形式的項目。創建項目相當容易,因爲我知道每個十六進制字符串中的每個位置代表項目屬性,但是我的問題是使用十六進制字符串並從中獲取項目屬性,因爲某些屬性共享相同的位置在十六進制字符串..從十六進制字符串派生信息
考慮下面的十六進制字符串:
指數:... 十六進制:0000120B837A00000010000000000000
我的問題是我有3個不同的屬性:等級,運氣和技巧。
運氣是一個布爾,並增加了4到位置3或否則爲0。
技能是布爾,並增加了8到位置2或否則爲0。
等級是一個int和使用位置2和3.每次添加8個。
實施例2,3位置可以是:FC
=>等級15(8 * 15 = 120到POS 2,3)+技能(8到POS 2)+運氣(4至POS 3)
所以我的問題是,給定一個十六進制字符串,並查看位置2,3我怎麼可能知道當多個屬性使用相同的位置時包含哪些屬性?我是新來的十六進制/二進制系統,所以我很抱歉如果我錯過了一些信息。我也試圖在C#或Java中實現這一點。
數據庫設計不是我的遊戲使用的,所以我無法改變設計,無法顯着改變我無法訪問的遊戲代碼。我只是想製作一個程序來編輯和創建這些項目。 – joe 2015-04-04 01:32:20