Arduino 从十进制ASCII数字到整数字符
我想从包含整数的SD卡读取一个文件。reading函数返回48到57之间的十进制ASCII值,对应于字符Arduino 从十进制ASCII数字到整数字符,arduino,ascii,Arduino,Ascii,我想从包含整数的SD卡读取一个文件。reading函数返回48到57之间的十进制ASCII值,对应于字符'0'到'9'。如何将此字符保存为整数?这就是我现在的代码。如果我运行此代码并从文件中读取'0',则访问权限将为48,也将为c charc; 字符串聊天室id; int访问; int getaccess(字符串聊天\u id){ 字符串a=“Gebruikers/”+聊天室id+”.txt”; 如果(!SD.存在(a.c_str())){ 返回0; }否则{ myFile=SD.open(“G
'0'
到'9'
。如何将此字符保存为整数?这就是我现在的代码。如果我运行此代码并从文件中读取'0'
,则访问权限将为48,也将为c
charc;
字符串聊天室id;
int访问;
int getaccess(字符串聊天\u id){
字符串a=“Gebruikers/”+聊天室id+”.txt”;
如果(!SD.存在(a.c_str())){
返回0;
}否则{
myFile=SD.open(“Gebruikers/”+chat_id+“.txt”);
如果(我的文件){
Serial.println(“获取访问号”);
access=myFile.read();
myFile.close();
Serial.println(“完成”);
c=访问+0;
返回c;
}否则{
Serial.println(“错误打开”+numer+“.txt”);
}
}
}
如果您读取的是单个数字,则只需从ASCII码中减去48,即可得到数字
通常写为:
int-oneDigitNumber=someAsciCode-'0';
如果您读取的是单个数字,则只需从ASCII码中减去48,即可得到数字
通常写为:
int-oneDigitNumber=someAsciCode-'0';
Arduino的东西是否包括fscanf
?不,很遗憾,我只能使用read()函数Stream.parseInt
?是的,这很有效。我不知道。非常感谢。Arduino的东西是否包括fscanf
?不,很遗憾,我只能使用read()函数Stream.parseInt
?是的,这很有效。我不知道。谢谢大家!@格雷戈尔。你能解释一下代码行的编辑吗?对我来说,它看起来还是一样,但显然已经改变了。只是想知道我做错了什么。这已经不是我第一次看到有人这样编辑我的代码了,我想知道如何在第一次就把它做好。@gre gor。你能解释一下代码行的编辑吗?对我来说,它看起来还是一样,但显然已经改变了。只是想知道我做错了什么。这不是我第一次看到有人这样编辑我的代码,我想知道如何在第一次就把它做好。