私はSNMP4Jを使用しており、SNMPトラップからカンマ区切り文字列を出力しています。特定の要素をカンマ区切りの文字列バッファに表示
すなわち
StringBuffer msg = new StringBuffer();
msg.append(event.toString());
Vector<? extends VariableBinding> varBinds = event.getPDU().getVariableBindings();
if (varBinds != null && !varBinds.isEmpty()) {
Iterator<? extends VariableBinding> varIter = varBinds.iterator();
while (varIter.hasNext()) {
VariableBinding var = varIter.next();
msg.append(var.toString()).append(";");
}
}
System.out.println("Message Received: " + msg.toString());
出力 -
Message Received: CommandResponderEvent[securityModel=1, securityLevel=1, maxSizeResponsePDU=65535, etc etc
と同様に、私は(特定の要素を表示する必要が全体出力列特に
peerAddress=192.168.150.210/61263
と
VBS[1.3.6.1.4.1.332.10.14.19.11.0 = Fire]]
だけ理想的にIPアドレスの一部(192.168.150.210)と「意味」(火)は
私は特定の要素を見つけるために、分割を使用し、それらまたはより良い方法があるのサブストリングのですか?
String sixth_word = msg.toString().split(",")[6];
イベントの[getPeerAddress](http://www.snmp4j.org/ doc/org/snmp4j/CommandResponderEvent.html#getPeerAddress())メソッド、および[変数](http://www.snmp4j.org/doc/org/snmp4j/smi/Variable.html)およびそのサブクラスのメソッド、直接データを取得するには? – VGR
こんにちはVGR、私は文字列と個々の要素の両方を必要とする、私はどのようにgetPeerAddress(私は初心者です)と言う呼び出し方法を拡張することができます。ありがとうございました – Active