Я исследовал, как использовать метод сканера (поскольку я новичок в нем), и мой код выглядит точно так же, как и другие, но при этом он не находит файл. Мой .txt файл находится в папке src.Сканер не находит файл
Он выдает следующее сообщение об ошибке:
java.io.FileNotFoundException: StationInfo.txt (No such file or directory)
at java.io.FileInputStream.open0(Native Method)
at java.io.FileInputStream.open(FileInputStream.java:195)
at java.io.FileInputStream.<init>(FileInputStream.java:138)
at java.util.Scanner.<init>(Scanner.java:611)
at traingui.code.TrainGui$1.run(TrainGui.java:37)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Вот мой код, который реализует сканер:
package gui.code;
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.SwingUtilities;
public class Gui {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
//running the gui
public void run() {
makeAndShowGUI();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
});
}
}
Ваш код не запускается из папки 'src'; используйте полный путь, загрузите его из своей домашней папки или выясните, где вы действительно используете свой код. –
Если ваш файл находится в папке src, вы можете загрузить его в качестве ресурса. Обычно вы помещаете его где-то в src/main/resources, и это закончится в classpath. Затем вы можете использовать getResourceAsStream() – pandaadb