OutputStream类执行write函数时出现NullPointException的处理

本文介绍了一位开发者在调试SWT的SOCKET通信程序时遇到的NullPointerException问题及其解决过程。错误源于尝试写入null的OutputStream,正确的做法是在写入前确保获取到有效的socket输出流。

在调试一个SWT的SOCKET通信程序时提示了标题所示的错误.

查看了一下API:

public void write(byte[]b,
                  intoff,
                  intlen)
           throws IOException
将指定字节数组中从偏移量 off 开始的 len 个字节写入此输出流。write(b, off, len) 的常规协定是:将数组 b 中的某些字节按顺序写入输出流;元素 b[off] 是此操作写入的第一个字节,b[off+len-1] 是此操作写入的最后一个字节。

OutputStreamwrite 方法对每个要写出的字节调用一个参数的 write 方法。建议子类重写此方法并提供更有效的实现。

如果 bnull,则抛出 NullPointerException

但是发现输出的字节数组不是null.于是继续上网找,终于发现了问题:

我的部分代码:

OutputStream out = null;

//问题

String str = "输出文本";

byte buff[] = str.getBytes();

out.wirte(buff);

其中注释的地方应该填上

out = socket.getOutputStream();

否则会造成out = null引起的NullPointException。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值