C#:分割成功
作者: 实验小白鼠 日期: 2007-12-06 19:29
以前有看过某些游戏,或者是自己的小研究,就是数据有个索引,然后根据这个索引读取文件。
至少,DS模拟人生就是其中一个。
今天写了分割软件,成功将整合的文件根据索引分割了。
分割前的原文件26MB左右,分割后,占空间达120MB之多。
小文件是罪魁祸首啊!
附上关键部分C#代码:
2007-12-6 19:30:27
至少,DS模拟人生就是其中一个。
今天写了分割软件,成功将整合的文件根据索引分割了。
分割前的原文件26MB左右,分割后,占空间达120MB之多。
小文件是罪魁祸首啊!
附上关键部分C#代码:
- int IndexLen = bFileIndex.ReadInt32() / 4;
- strFileIndex.Position = 0x0;
- //读取索引
- int[] BinIndex = new int[IndexLen];
- for (int i = 0; i < IndexLen; i++)
- {
- BinIndex[i] = bFileIndex.ReadInt32();
- }
- //计算小文件长度
- int[] BinLen = new int[IndexLen - 1];
- for (int y = 0; y < (IndexLen - 1); y++)
- {
- BinLen[y] = BinIndex[y + 1] - BinIndex[y];
- }
- for (int i = 0; i < IndexLen - 1; i++)
- {
- string TempFileName = fPath + fPathName + "\" + i.ToString().PadLeft(5, '0') + ".bin";
- FileStream TempStream = new FileStream(TempFileName, FileMode.OpenOrCreate);
- BinaryWriter TempWriter = new BinaryWriter(TempStream);
- byte[] TmpBytes = bFileIndex.ReadBytes(BinLen[i]);
- TempWriter.Write(TmpBytes);
- TempWriter.Close();
- TempStream.Close();
2007-12-6 19:30:27
评论: 0 |
引用: 0 |
阅读: 557
加入网摘
显示Tag关联文章
为了Moonshell 2.0,下载Delphi (2009-01-01 13:07)
首个完整的汉化工具 (2008-09-24 23:15)
炸弹人大陆2的文本真那个啥 (2008-09-08 11:56)
手痒写F2blog转Wordpress程序 (2008-08-06 21:20)
失眠了 (2008-07-24 07:19)
又重写代码…… (2008-06-26 01:14)
使用C#混淆与加壳工具后的一点感受 (2008-06-12 18:14)
.NET:混淆与加壳 (2008-06-12 13:50)
面对现状,很无奈 (2008-06-11 19:56)
开始写修改PM部分 (2008-06-11 11:32)
首个完整的汉化工具 (2008-09-24 23:15)
炸弹人大陆2的文本真那个啥 (2008-09-08 11:56)
手痒写F2blog转Wordpress程序 (2008-08-06 21:20)
失眠了 (2008-07-24 07:19)
又重写代码…… (2008-06-26 01:14)
使用C#混淆与加壳工具后的一点感受 (2008-06-12 18:14)
.NET:混淆与加壳 (2008-06-12 13:50)
面对现状,很无奈 (2008-06-11 19:56)
开始写修改PM部分 (2008-06-11 11:32)
发表评论
订阅
上一篇
返回
下一篇
