2012-10-08 104 views
0

我想以TCPDump格式保存捕獲的數據包。我正在使用Java和JPCap庫。但是,我無法使用JpcapWriter.writePacket()函數,它給我一個JVM錯誤。 這是導致JVM錯誤的代碼: captor = JpcapCaptor.openDevice(interfaceList [interfaceNumber],65535,true,20); captor.setFilter(「ip and tcp」,true);以TCPDump格式保存捕獲的數據包(Java)

JpcapWriter writer=JpcapWriter.openDumpFile(captor,"pass.txt"); 

for(int i=0;i<10;i++){ 
     //capture a single packet 
     Packet packet=captor.getPacket(); 
     //save it into the opened file 
     writer.writePacket(packet); 

    } 
writer.close(); 

任何其他方式將它保存到TCPformat文件中?

回答

0

你能解釋一下如何調用寫數據包的方法嗎?我用來寫數據包的正常方式是

JpcapCaptor captor=JpcapCaptor.openDevice(device[index], 65535, false, 20); 
JpcapWriter writer=JpcapWriter.openDumpFile(captor,"filename"); 
for(int i=0;i<10;i++){ 
    Packet packet=captor.getPacket(); 
    writer.writePacket(packet); 
} 
writer.close(); 

它保存TCPDump格式的數據包。

+0

我已經編輯我的帖子上面,包括我使用的代碼。 –

+0

我已經編輯我的帖子上面,包括我使用的代碼。 –