C++ c+中的数据和时间格式+;
我需要转换17字节格式的日期时间 格式是C++ c+中的数据和时间格式+;,c++,C++,我需要转换17字节格式的日期时间 格式是 MMDDYYYY HH:MM:SS 用ASCII码 示例日期和时间:01212009 09:38:57 十六进制格式 0x30 0x31 0x32 0x31 0x32 0x30 0x30 0x39 0x20 0x30 0x39 0x3A 0x33 0x38 0x3A 0x35 0x37 问题是如何将此01212009 09:38:57转换为十六进制格式。我需要通
MMDDYYYY HH:MM:SS
用ASCII码
示例日期和时间:01212009 09:38:57
十六进制格式
0x30 0x31 0x32 0x31 0x32 0x30 0x30 0x39
0x20 0x30 0x39 0x3A 0x33 0x38 0x3A 0x35 0x37
问题是如何将此01212009 09:38:57转换为十六进制格式。我需要通过网络发送此日期时间。您发布的十六进制值正是您发布的字符串的ascii值,
01212009 09:38:57
在您的示例中,实际上没有从该字符串到十六进制值的转换 所以如果你有这个:
const char* dateStr = "01212009 09:38:57";
您可以这样打印:
for (int i=0; i < strlen(dateStr); ++i)
{
printf("%x\t", dateStr[i]);
}
for(int i=0;i
(或者类似的事情)您将基本上获得这些值。
您只是将它们显示为十六进制值,而不是它们的字符表示形式 我实际上不知道你在哪个平台上工作。我认为,在标准平台C++库中,代码> iToA./COD>函数应该存在于所有平台上。使用它将字符值转换为十六进制。只需将
基数
参数设置为16您将表单与表示混淆
仅仅因为我们传统上以十六进制格式表示“原始字节”,并不意味着它们以这种方式“存在”
无论您将数据显示为ASCII字符串“01212009 09:38:57”还是显示为细分的单个字节值列表,它仍然是相同的数据,仍然是17个字节
因此,这里不需要进行转换。实现了吗?转换成?预期投入?这个问题很模糊。你有什么格式?你想要什么格式。向我们展示你将要调用的函数。还有,你已经尝试了什么?最后,如果是作业,请贴上标签。你有什么问题?在你的问题中,十六进制数据和它的字符串表示是相同的。我希望逻辑将01212009 09:38:57转换为17字节格式。