2012-02-14 2 views
-1

Я беру имя файла через filenamechooser и отправляю ему его желаемый метод обработки, но проблема в том, что он не принимает имя файла. Я использую JPcap для открытия файла. я жесткий код его, он дает мне прекрасные результаты, но когда я отправить имя файла, которое дает мне exception.Here мой кодJava: File not opening дает исключения

  JpcapCaptor captor = JpcapCaptor.openFile("E:\\10.pcap"); 

Я принял заявление для печати этого файла, и это дает мне этот

  System.out.println("E:\\10.pcap"); 

на консоли я получаю это

E: \ 10.pcap

но когда я отправить это имя файла из моего графического интерфейса для этой функции OpenFile это дает мне это исключение хотя, когда я принять заявление для печати этого файла он также является тот же E: \ 10 .pcap

 SEVERE: null 
    java.io.IOException: E:\10.pcap 
    : Invalid argument 
    at jpcap.JpcapCaptor.openFile(JpcapCaptor.java:93) 
    at dpi.Functions.PortBasedAnalysis(Functions.java:52) 
    at dpi.GraphicalInterface.jButton1MouseClicked(GraphicalInterface.java:104) 
    at dpi.GraphicalInterface.access$000(GraphicalInterface.java:25) 
    at dpi.GraphicalInterface$1.mouseClicked(GraphicalInterface.java:49) 
    at java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:253) 
    at java.awt.Component.processMouseEvent(Component.java:6041) 
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3260) 
    at java.awt.Component.processEvent(Component.java:5803) 
    at java.awt.Container.processEvent(Container.java:2058) 
    at java.awt.Component.dispatchEventImpl(Component.java:4410) 
    at java.awt.Container.dispatchEventImpl(Container.java:2116) 
    at java.awt.Component.dispatchEvent(Component.java:4240) 
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322) 
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3995) 
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916) 
    at java.awt.Container.dispatchEventImpl(Container.java:2102) 
    at java.awt.Window.dispatchEventImpl(Window.java:2429) 
    at java.awt.Component.dispatchEvent(Component.java:4240) 
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) 
    at  java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273) 
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183) 
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173) 
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168) 
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160) 
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:121) 
+0

Для лучшей помощи раньше, опубликовать [SSCCE] (http://sscce.org/). –

ответ

1

Вы уверены, что этот файл существует? возможно, вам нужно сначала создать его?

попробовать

File f = new File("E:\\10.pcap"); 
if(!f.exists()){ 
    f.createFile(); //or create() - i forget 
} 
//then do the pcap shit 
+0

или вы можете использовать try {} catch (Exception ex) {} – Jimmt

+0

Да, файл существует. Код отлично работает, когда я жестко его кодирую – Xara