mirror of
https://github.com/lionsoul2014/ip2region.git
synced 2026-01-25 17:16:11 +00:00
36 lines
1.3 KiB
Markdown
36 lines
1.3 KiB
Markdown
# ip2region xdb csharp 生成实现
|
||
|
||
## 编译安装
|
||
编译环境:[dotnet6.0](https://dotnet.microsoft.com/zh-cn/download/dotnet/6.0)
|
||
```bash
|
||
# cd 到 maker/csharp/IP2RegionMaker目录
|
||
dotnet publish -o ./bin
|
||
```
|
||
|
||
然后会在当前目录的 bin 目录下得到一个 IP2RegionMaker.dll 的打包文件。
|
||
|
||
# 数据生成
|
||
|
||
通过 `dotnet IP2RegionMaker.dll` 来生成 ip2region.xdb 二进制文件:
|
||
```bash
|
||
➜ csharp git:(master) ✗ dotnet IP2RegionMaker.dll
|
||
ip2region xdb maker
|
||
dotnet IP2RegionMaker.dll [command options]
|
||
--src string source ip text file path
|
||
--dst string destination binary xdb file path
|
||
```
|
||
|
||
例如,通过默认的 data/ip.merge.txt 原数据,在当前目录生成一个 ip2region.xdb 二进制文件:
|
||
```bash
|
||
➜ csharp git:(master) ✗ dotnet ./IP2RegionMaker/bin/IP2RegionMaker.dll --src=../../data/ip.merge.txt --dst=./ip2region.xdb
|
||
# 会看到一堆输出,最终会看到如下输出表示运行成功
|
||
...
|
||
...
|
||
...
|
||
write done, dataBlocks: 13804, indexBlocks: (683591, 720221), indexPtr: (982904, 11065984)
|
||
Done, elapsed:2.1966620833333335m
|
||
```
|
||
|
||
# 数据 查询/bench 测试
|
||
|
||
已经完成开发的 [binding](../../binding/) 都有查询和 bench 测试程序以及使用文档,你可以使用你熟悉的语言的 searcher 进行查询测试或者bench测试,来确认数据的正确性和完整性。 |