/// <summary> /// 加载数据表数据 /// </summary> public void LoadData() { //1.拿到这个表格的buffer byte[] buffer = LocalFileMgr.GetBuffer(string.Format(@"\\Mac\Home\Desktop\GameData\{0}.bytes", DataTableName)); //2.加载数据 using (MMO_MemoryStream ms = new MMO_MemoryStream(buffer)) { LoadList(ms); } }
/// <summary> /// 加载数据表数据 /// </summary> public void LoadData() { //1.拿到这个表格的buffer byte[] buffer = LocalFileMgr.GetBuffer(string.Format(@"E:\WorldTheAutumn\SoundCode\Server\GameData\{0}.bytes", DataTableName)); //2.加载数据 using (MMO_MemoryStream ms = new MMO_MemoryStream(buffer)) { LoadList(ms); } }
/// <summary> /// 构造函数 /// </summary> /// <param name="path"></param> public GameDataTableParser(string path) { m_FieldNameDic = new Dictionary <string, int>(); //------------------ //第1步:读取数据流 //------------------ byte[] buffer = LocalFileMgr.GetBuffer(path); //------------------ //第2步:解压缩 //------------------ buffer = ZlibHelper.DeCompressBytes(buffer); //------------------ //第3步:xor解密 //------------------ buffer = SecurityUtil.Xor(buffer); //------------------ //第4步:解析数据到数组 //------------------ using (MMO_MemoryStream ms = new MMO_MemoryStream(buffer)) { m_Row = ms.ReadInt(); m_Column = ms.ReadInt(); m_GameData = new String[m_Row, m_Column]; m_FieldName = new string[m_Column]; for (int i = 0; i < m_Row; i++) { for (int j = 0; j < m_Column; j++) { string str = ms.ReadUTF8String(); if (i == 0) { //表示读取的是字段 m_FieldName[j] = str; m_FieldNameDic[str] = j; } else if (i > 2) { //表示读取的是内容 m_GameData[i, j] = str; } } } } }