首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在处理过程中修剪字符串会导致NullPointerException

在处理过程中修剪字符串会导致NullPointerException
EN

Stack Overflow用户
提问于 2016-01-18 19:16:54
回答 1查看 332关注 0票数 0

我的处理草图出了点小问题。我正在尝试通过串行连接从我的Arduino中获取一个值。在这种情况下,它是一个超声波传感器,它应该返回距离。在Arduino Software Serial-Monitor中,我有介于2和300之间的正确值。但在将其发送到Processing之后,我只得到了ASCII代码,我想将其转换为字符串。但是转换后的字符串还包含换行符和回车符-我不需要这些。

我想,我可以通过使用trim删除这个换行符和回车符。但是现在我只能在trim(distance)中得到一个NullPointerException。我不知道现在该怎么办。

我在超声波部分的Arduino素描:

代码语言:javascript
复制
//Ultraschall
    int duration, distance
    digitalWrite(trigPin, LOW);
    delayMicroseconds(2);

    digitalWrite(trigPin, HIGH);
    delayMicroseconds(10);

    digitalWrite(trigPin, LOW);
    duration = pulseIn(echoPin, HIGH);

    //Calculate the distance (in mm)
    distance = duration / 5.8;
    Serial.println(distance);
    delay(50);

我在超声波部分的处理草图:

以上设置:

代码语言:javascript
复制
import processing.serial.*;
Serial port;

在绘图中:

代码语言:javascript
复制
  String distance = port.readString();
  String distanceTrim = trim(distance);
  println (distanceTrim);
EN

回答 1

Stack Overflow用户

发布于 2016-01-19 02:15:18

您的distance变量是null。尝试打印出它的值以检查以下内容:

代码语言:javascript
复制
String distance = port.readString();
println(distance);
String distanceTrim = trim(distance);
println (distanceTrim);

您对port.readString()的调用将返回null。我不知道这到底是为什么,但是您的NullPointerException的源代码来自将null传递给trim()函数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34853415

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档