gpt4 book ai didi

c++ - 将记录集中的变体(具有货币值)转换为格式正确的字符串

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:51:14 26 4
gpt4 key购买 nike

我有一个获取支付金额值的查询。该字段为currency类型,在MS Access数据库中。

我需要在文本框中显示这个值(我使用 C++ 和 GUI 的原始 WinAPI),所以我需要知道如何将 _variant_ 从记录集中转换为正确的字符串(1,200.55)。

这是一个示例(请记住,我使用原始 WinAPI 和 C++ 来实现 GUI):

SetDlgItemText(hDlg, IDC_EDIT11, 
pRS->Fields->GetItem(L"PaidValue")->Value.bstrVal); // problem is this line

当我运行程序时,我的文本框是空的。

当我调试它时,它没有报告任何错误。

问题:

如何将 _variant_t 转换为字符串 (1,200.00)?

最佳答案

CString GetString(_variant_t vValue)
{
USES_CONVERSION;
CString strValue("");
if ((V_VT(&vValue) == VT_NULL) || (V_VT(&vValue) == VT_EMPTY))
return strValue;

if ((V_VT(&vValue) == VT_BSTR) || SUCCEEDED(VariantChangeType(&vValue, &vValue, 0, VT_BSTR)))
strValue = OLE2T(V_BSTR(&vValue));

return strValue;
}

CString strVal = GetString(pRS->Fields->Item["PaidValue"]->Value)

关于c++ - 将记录集中的变体(具有货币值)转换为格式正确的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28446605/

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