В дополнение к ответам PhoneixS, чтобы получить правильную длину строки в байтах. Поскольку mb_strlen()
медленнее, чем strlen()
, для лучшей производительности можно проверить установку «mbstring.func_overload» ini, чтобы использовать только mb_strlen()
когда это действительно необходимо:
$content_length = ini_get('mbstring.func_overload') ? mb_strlen($content , '8bit') : strlen($content);
File
предоставляет метод для получения URL-адреса для файла, а конструктор Image
ожидает URL String
.
Image imageForFile = new Image(file.toURI().toURL().toExternalForm());
Объединение класса javax.imageio.ImageIO
( ref ) и javafx.embed.swing.SwingFXUtils
( ref ) может преобразовать «вход» (то есть: поток, файл, URL) в образ JavaFX. Пример кода (для File
):
public static Image readImage(File file) {
try {
BufferedImage bimg = ImageIO.read(file);
return SwingFXUtils.toFXImage(bimg, null);
}
catch( IOException e ) {
// do something, probably throw some kind of RuntimeException
}
}