Вы получаете это исключение, потому что вы используете конструктор new File(myURI)
, тогда как myURI
имеет другую схему, чем file:
.
Например, это будет работать (примечание файл: // ...):
System.out.println(new File(new URI("file:///etc/passwd")));
пока это не будет не работать (примечание http: // ...):
System.out.println(new File(new URI("http://localhost/etc/passwd")));
Если вы хотите использовать метод getResource()
, вам придется работать с URL. Вы не можете предполагать, что у него всегда будет схема «file:».
Если вам нужно создать шрифт из файла * .ttf ресурса, вы можете сделать:
URL url = this.getClass().getResource("/fonts/ARIALUNI.TTF");
InputStream is = url.openStream();
Font font = Font.createFont(Font.TRUETYPE_FONT, is);