当我的NodeMCU 0.9主板上运行此代码时,我遇到了一个奇怪的故障。它基本上以以下格式从API获取http代码:
<abbr title="klokken">kl</abbr> 11–12
在这种情况下,我想通过先删除前42个字符完全正常然后用 - 替换 - 来隔离11和12。当我打开草图并将此程序粘贴到其中时,它运行完全正常并返回11--12 但当我以随机名称保存此程序时,它会被重建并且由于某种原因不能正确替换字符然后返回11 - 12。 我已经尝试在重建时替换字符串的不同部分,但工作正常但由于某种原因,我似乎无法找到索引或替换三个奇怪的字符。
http.begin(URL_time);
int httpCode = http.GET();
String timerange;
if(httpCode > 0){
timerange = http.getString();
timerange.remove(0,42);
timerange.replace("–", "--");
Serial.println(timerange);
因此我的问题是,除了不保存我的代码之外,是否有人知道如何解决这个问题。请在需要时随时让我详细说明我的问题。
答案 0 :(得分:0)
您接收的字符串在Windows Latin 1(ISO 8859-1)中编码,您(可能)使用UTF-8编码。你需要的是正确地重新编码字符串。