gpt4 book ai didi

java - 在 NetBeans 上运行 JavaFX 应用程序时出现 "URI is not hierarchical"

转载 作者:行者123 更新时间:2023-11-30 04:32:53 28 4
gpt4 key购买 nike

当我运行 JavaFX 应用程序时,出现“URI 不是分层的”错误。下面代码的第 4 行引发了异常。你知道我该如何解决这个问题吗?

001          { // HISTORY
002 try {
003 URI uri = MainClass.class.getResource("history.txt").toURI();
004 File f = new File(uri);
005 String text = FileUtils.readFileToString(f);
006 historyTextArea.setText(text);
007 } catch (URISyntaxException | IOException ex) {
008 Constants.LOGGER.log(Level.SEVERE, ex.toString());
009 }
010 }

.

URI is not hierarchical
file:/C:/Users/Carlos/Desktop/projetos_java/CodePaster/dist/CodePaster.jar!/com/googlecode/codepaster/gui/about.fxml
at java.io.File.<init>(File.java:392)
at com.googlecode.codepaster.gui.AboutWindowController.initialize(AboutWindowController.java:142)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2152)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2028)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2742)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2721)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2707)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2694)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2683)
at com.googlecode.codepaster.MainClass.start(MainClass.java:97)
at com.sun.javafx.application.LauncherImpl$5.run(LauncherImpl.java:319)
at com.sun.javafx.application.PlatformImpl$5.run(PlatformImpl.java:206)
at com.sun.javafx.application.PlatformImpl$4.run(PlatformImpl.java:173)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.access$100(WinApplication.java:29)
at com.sun.glass.ui.win.WinApplication$3$1.run(WinApplication.java:73)
at java.lang.Thread.run(Thread.java:722)

最佳答案

问题在于您的 URI 引用了 JAR 文件内的资源。 File(URI) 构造函数无法处理这样的 URI。它只理解文件的 URI。

你需要做的是这样的:

    String text;
try (InputStream is = MainClass.class.getResourceAsStream("history.txt")) (
text = IOUtils.toString(is);
} catch (...

关于java - 在 NetBeans 上运行 JavaFX 应用程序时出现 "URI is not hierarchical",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14207611/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com