* @Author: luozheng 1732036298@qq.com\r
* @Date: 2024-08-05 15:20:03\r
* @LastEditors: luozheng 1732036298@qq.com\r
- * @LastEditTime: 2024-09-23 16:17:55\r
+ * @LastEditTime: 2024-09-23 20:24:49\r
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/player/include/PlayersPresenter.h\r
*/\r
\r
List<PlayerCaseInfo>& GetCase();\r
char *GetCase(int16_t index);\r
void AddCase(PlayerCaseInfo testCaseInfo);\r
+ std::string hex_to_string(const std::string &hex_str);\r
\r
private:\r
List<PlayerCaseInfo> *playersCaseList_{nullptr};\r
return OHOS_SUCCESS;\r
}\r
\r
+//将16进制字符串转UTF-8字符串\r
+std::string PlayersListGroup::hex_to_string(const std::string &hex_str) \r
+{ \r
+ size_t length = hex_str.length(); \r
+ std::string result; \r
+ result.reserve(length / 2); // 预分配内存以容纳结果字符串,避免在 push_back 时频繁重新分配 \r
+\r
+ for (size_t i = 0; i < length / 2; i++) { \r
+ // 从十六进制字符串中提取每两个字符 \r
+ std::string byteString = hex_str.substr(i * 2, 2); // 获取两个字符的子串 \r
+\r
+ // 将十六进制字符串转换为字符 \r
+ result.push_back(static_cast<char>(strtol(byteString.c_str(), nullptr, 16))); \r
+ } \r
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "hex_to_string:%s",result.c_str());\r
+ return result; // 返回结果字符串 \r
+} \r
ButtonOnClickListener::~ButtonOnClickListener()\r
{\r
}\r