【发布时间】:2014-03-05 17:12:51
【问题描述】:
我有一个二进制格式的 .dat 文件。此 .dat 文件包含一个列入黑名单的值,其中显示的值为真,零为假。当用记事本或记事本++打开时,我看不到里面的零和一。只有奇怪的字符显示。
例子:
ù¿.ÿôý½¯ÿËûþÿÅ}ó
但是我已经下载了十六进制编辑器,用那个软件我可以看到十六进制值。值为
F9 BF 7F FF F4 FD BD AF FF CB FB FE FF C5 7D F3
对于每个十六进制值,我需要更改为二进制格式。因此,假设对于 F9,当我们更改为二进制时,它将变为 11111001,而对于 BF,它将变为 10111111等等。
所以在二进制值中,我需要对每个二进制数字进行反转,然后将其保存到数据库中。假设当前值为 11111001,那么我将得到 10011111 和每个二进制数字都将存储到数据库中。与 10111111 等相同。所以在数据库表中,对于 F9 它将变为
id flag_blacklist
1 1
2 0
3 0
4 1
5 1
6 1
7 1
8 1
继续价值BF它会变成
id flag_blacklist
9 1
10 1
11 1
12 1
13 1
14 1
15 0
16 1
直到完成读取 .dat 文件中的所有内容。
流程是十六进制值 > 二进制值 > 反转二进制数 > 存储到数据库
谷歌几个小时后,我仍然没有找到适合我的情况的最佳答案。如果有任何链接可以帮助我解决这个问题或需要更多信息,请告诉我。
已编辑:
.dat 文件的最大大小为 245 KB。
【问题讨论】:
-
尚不清楚这与 Windows 窗体有什么关系...您的问题中没有任何特定于 GUI 的内容。
-
@JohnnyMopp,让我检查并提供更新
-
@JonSkeet,抱歉不小心标记了 winforms