Хорошо, следующий сервис должен быть полезен для конвертации: http://rate-exchange.herokuapp.com/ . Наша компания использует это для многих живых проектов, включая расширение Chrome, которое, кажется, уже запущено.
Я вижу два варианта:
Я не знаю почему, но для меня это работает
" <img src=\"file:s.png\">\n"+
при условии, что s.png находится в текущем рабочем каталоге.
Другой вариант, который кажется более подходящим для меня является:
URL url = HTMLLabel.class.getResource( "/s.png" );
String html = "<html>\n" +
" <body>\n" +
" <div style=\"text-align: center;\">\n" +
" <img src=\""+url+"\">\n"+
" </div>\n"+
" </body>\n"+
"</html>";
Почему ты вообще так делаешь? Просто используйте этот конструктор JLabel (изображение значка)
JLabel label = new JLabel(createImageIcon("s.png","description"));
protected ImageIcon createImageIcon(String path, String description) {
java.net.URL imgURL = getClass().getResource(path);
if (imgURL != null) {
return new ImageIcon(imgURL, description);
} else {
System.err.println("Couldn't find file: " + path);
return null;
}
}
Или, если вы настаиваете на варианте html.
кстати, в файловом протоколе используются 3 слэша ( file: //s.png
недействителен), а file: ///s.png
будет означать C: \ s.png
. Если образ находится в начальном каталоге, вы можете использовать его.
String path = System.getProperty("user.dir");
String html =
"<html>\n" +
"<body>\n" +
"<div style=\"text-align: center;\">\n" +
"<img src=\"file:///"+path+"/s.png\">\n"+
"</div>\n"+
"</body>\n"+
"</html>";
Но я не даю никаких гарантий относительно второго решения.