gpt4 book ai didi

c++ - 查询中的 SQLite Int 到 Hex 和 Hex 到 Int

转载 作者:IT王子 更新时间:2023-10-29 06:30:30 26 4
gpt4 key购买 nike

我有一些以 INTEGER 形式提供给我的数字数据。我将它与其他数据一起插入到 SQLite 中,但当我将其写出时 INTEGER 数字需要为 8 位 Hex 数字,前导零。

例如

输入

400 
800
25
76

输出

00000190 
00000320
00000019
0000004C

最初我在读入它们时转换它们并将它们存储为 TEXT,就像这样。

stringstream temp;
temp << right << setw(8) << setfill('0') << hex << uppercase << VALUE;

但生活从来都不容易,现在我必须以 INTEGER 形式创建第二个输出,而不是 HEX。有没有办法在 SQLite 中将 INTEGER 数字转换为 HEX 或将 HEX 数字转换为 INTEGER

我想避免在 SQLite 中使用 C++ 更改数据,因为我已经编写了一些修道院导出函数,这些函数获取查询结果并将它们打印到文件中。如果我需要在查询返回期间触及数据,我将无法使用它们。

我查看了 SQLite 中的 HEX() 函数,但没有得到预期的结果。我可以做一个功能还是效率很低?我正在对一个非常大的数据集执行此操作,因此应该避免任何昂贵的事情。

注意:我在 Visual Studios 2010 中使用 SQLites C/C++ 接口(interface)。

最佳答案

你可以使用 sqlite3 的 printf() 函数:

CREATE TABLE T (V integer);
insert into T(V) values(400), (800), (25), (76);
select printf('%08X', V) from T;

关于c++ - 查询中的 SQLite Int 到 Hex 和 Hex 到 Int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14288186/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com