微信小程序真机报文转hex时空格省略了导致报文发送不成功,怎么处理让他不去掉空格
时间: 2024-03-11 13:46:49 浏览: 104
您可以使用 JavaScript 中的 String.fromCharCode() 函数将十六进制字符串转换为字符,并将空格保留在字符串中。例如,如果您有一个十六进制字符串 "48 65 6C 6C 6F",您可以使用以下代码将其转换为字符 "Hello":
```javascript
const hexString = "48 65 6C 6C 6F";
const hexArray = hexString.split(" ");
let result = "";
for (let i = 0; i < hexArray.length; i++) {
result += String.fromCharCode(parseInt(hexArray[i], 16));
}
console.log(result); // 输出 "Hello"
```
您可以根据您的具体需求,将上述代码嵌入到您的应用程序中,以确保空格不会被省略。
相关问题
js字符串转hex时有空格,微信小程序真机会自动忽略掉,怎么不让他忽略掉
你可以尝试使用正则表达式去除字符串中的空格,然后再进行转换。以下是一个示例代码:
```javascript
const str = "68 65 6c 6c 6f";
const hex = str.replace(/\s/g, '').toString('hex');
console.log(hex); // 输出 "68656c6c6f"
```
在这个示例中,使用了正则表达式 `\s` 匹配空格,然后使用 `replace` 方法将其替换为空字符串。最后使用 `toString('hex')` 将字符串转换为十六进制格式的字符串。这样就可以避免微信小程序真机自动忽略空格的问题。
hex转字符串时有空格,微信小程序真机会自动忽略掉,怎么不让他忽略掉
你可以尝试使用正则表达式将空格插入到每个字符之间,然后再进行转换。以下是一个示例代码:
```javascript
const hex = "68 65 6c 6c 6f";
const str = hex.replace(/\s/g, '').replace(/(.{2})/g, "$1 ").trim();
console.log(str); // 输出 "68 65 6c 6c 6f"
```
在这个示例中,首先使用正则表达式 `\s` 匹配空格,然后使用 `replace` 方法将其替换为空字符串。然后再使用正则表达式 `/(.{2})/g` 匹配每两个字符,并使用 `$1 ` 将其替换为带有空格的字符串。最后使用 `trim()` 方法去除字符串两端的空格。这样就可以避免微信小程序真机自动忽略空格的问题。
阅读全文