我正在尝试读取 AT 命令的结果(执行命令以从控制台对 GSM 调制解调器执行各种操作)。我已经看到并成功测试了使用 Java OuputStream 类将 AT 命令的结果作为输出流,但我需要做的是将结果不是作为输出流,而是在我的类中获取一个变量(现在是字符串)。
如果有可能这样做
outStream.write(("Some At command").getBytes());
效果很好,怎么可能做这样的事情
Strign resultOfCommmand=.....result of some AT command;
我正在以这种方式尝试
InputStream is = new ByteArrayInputStream(("some at commamd").getBytes());
String result = getStringFromInputStream(is);
System.out.println("66666666666666666666-----"+result);
/////////////////////
private static String getStringFromInputStream(InputStream is) {
BufferedReader br = null;
StringBuilder sb = new StringBuilder();
String line;
try {
br = new BufferedReader(new InputStreamReader(is));
while ((line = br.readLine()) != null) {
sb.append(line);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
if (br != null) {
try {
br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return sb.toString();
}
但是为了得到结果,我将 at 命令本身作为这样的字符串......输出:
66666666666666666666-----AT+CMGR=20