sparkjava:从InputStream将PNG作为base64加载
我有以下方法将资源作为字符串加载,其中sparkjava:从InputStream将PNG作为base64加载,java,base64,png,inputstream,spark-java,Java,Base64,Png,Inputstream,Spark Java,我有以下方法将资源作为字符串加载,其中path是指向类路径上资源的字符串(在纯文本上可以正常工作): 现在我想将PNG图像作为base64字符串加载,这样我就可以通过sparkjava使用内容类型:image/PNG将其发送回 我该怎么做 不要使用任何库,只使用普通的旧Java。使用response.header(“内容类型”、“图像/png”)在标题中设置MIME类型后,可以使用以下方法: try { return Files.readAllBytes(Paths.get(MyClas
path
是指向类路径上资源的字符串(在纯文本上可以正常工作):
现在我想将PNG图像作为base64字符串加载,这样我就可以通过sparkjava使用内容类型:image/PNG
将其发送回
我该怎么做
不要使用任何库,只使用普通的旧Java。使用
response.header(“内容类型”、“图像/png”)
在标题中设置MIME类型后,可以使用以下方法:
try {
return Files.readAllBytes(Paths.get(MyClass.class.getResource(path).toURI()));
} catch (IOException | URISyntaxException exception) {
exception.printStackTrace();
}
return null;
除此之外,要在Java8中对
字符串进行base64编码,您可以使用该类,因此只需通过
Base64.getMimeEncoder().encodeToString(resourceAsString.getBytes(StandardCharsets.UTF_8))
并将其作为响应发送回。不过,出于一些奇怪的原因,我还没有让它为我工作。我只是使用了我的框架的静态文件功能。在标题中使用response.header(“内容类型”、“图像/png”)
设置MIME类型后,您可以使用以下方法:
try {
return Files.readAllBytes(Paths.get(MyClass.class.getResource(path).toURI()));
} catch (IOException | URISyntaxException exception) {
exception.printStackTrace();
}
return null;
除此之外,要在Java8中对字符串进行base64编码,您可以使用该类,因此只需通过
Base64.getMimeEncoder().encodeToString(resourceAsString.getBytes(StandardCharsets.UTF_8))
并将其作为响应发送回。不过,出于一些奇怪的原因,我还没有让它为我工作。我只是使用了框架的静态文件特性