Java: файл не открывается, давая исключения - PullRequest
0 голосов
/ 14 февраля 2012

Я беру имя файла через filenamechooser и отправляю его желаемым методом для обработки, но проблема в том, что он не принимает имя файла. Я использую JPcap для открытия файла. Когда я жестко его кодирую, он даету меня отличные результаты, но когда я отправляю имя файла, это дает мне исключение. Вот мой код

         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)

1 Ответ

1 голос
/ 14 февраля 2012

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

попробовать

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