我使用java Mibble庫來處理MIB文件併爲我的snmp代理創建MIB實現。並有一個小問題:檢查MIB對象是否爲DisplayString
有一個DisplayString類型表示OCTET_STRING,但可以包含只有7位ASCII字符。還有類似AdminString這種OCTET_STRING的另一種代表,但可以包含所有的ASCII字符。
所以我的問題是:如何區分顯示字符串(這樣我可以檢查在我的實現中大於126的字符)從管理員字符串?我試圖使用MibTypeTag [1],但顯然我不知道如何使用它(任何提示?),它說「有可能使用相同或相似的原始ASN.1類型表示(例如爲DisplayString和Ip地址)」
我寫的英文不是很好,所以這裏是我想要做什麼:提前
if (MibTypeTag == DisplayString) {
check for chars greater than 126
}
else if (MibTypeTag == AdminString) {
awesome! nothing to do!
}
謝謝!
[1] http://www.mibble.org/doc/release/api/net/percederberg/mibble/MibType.html