要与服务器通信,您需要向它发送几个 xml - 这是在文档中编写的,这里出现了困难,因为没有创建第二个 xml。
试过:
创建了具有不同名称的 XmlSerializer 和 StringWriter 的新实例而没有错误,但始终为空,所以我不在那里写。
执行此操作时,我收到警告:
变量
xmlcreate1
初始化器Xml.newSerializer()
是多余的...
检查信息:此检查指出了变量值在赋值后从未使用过的情况,即: - 变量在赋值后永远不会被读取或 - 在赋值之前,该值总是被另一个赋值覆盖下一个变量读取或 - 变量初始化器是多余的(出于上述两个原因之一)设置 null 并向旧类发出新的 Xml.newSerializer() - 我得到与第一段相同的效果(空 xml)
向旧类发出一个新的 Xml.newSerializer() - 我得到与第一段相同的效果(空 xml)
只是 StartDocument - 没有反应,只是不会覆盖旧的。
ps 服务器完美响应第一个xml并发送正确的答案,我们成功解析
这是第一个 xml 的内容:
XmlSerializer xmlcreate = Xml.newSerializer();
StringWriter writer = new StringWriter();
xmlcreate.setOutput(writer);
xmlcreate.startDocument("UTF-8", true);
xmlcreate.setFeature("http://xmlpull.org/v1/doc/features.html#indent-output", true);
xmlcreate.startTag("", "Command");
xmlcreate.startTag("","Type");
xmlcreate.text("SERVER_CONNECTION");
xmlcreate.endTag("","Type");
xmlcreate.endTag("", "Command");
xmlcreate.endDocument();
//Отправляем на сервер xml
DataOutputStream serverOutput = new DataOutputStream(s.getOutputStream());
serverOutput.writeUTF(writer.toString());
serverOutput.flush();
这是第二个 xml 的内容:
//xmlcreate=null;
//xmlcreate = Xml.newSerializer();
//writer = new StringWriter();
//xmlcreate.setOutput(writer);
xmlcreate.startDocument("UTF-8", true);
xmlcreate.setFeature("http://xmlpull.org/v1/doc/features.html#indent-output", true);
//Open Tag <Command>
xmlcreate.startTag("", "Command");
xmlcreate.startTag("","Type");
xmlcreate.text("SERVER_GET_SYSTEMTIME");
xmlcreate.endTag("","Type");
xmlcreate.endTag("", "Command");
serverOutput.writeUTF(writer.toString());
serverOutput.flush();
没什么特别的)
好的代码提示:一开始应该是这样的:
也错过了闭幕: