目前我可以将服务器的URL发送到文件,然后服务器将该文件保存到字节数组并将其存储在数据库中。根据需要,用户可以保存该文件。
它适用于csv文件(我现在只测试了那些文件)。
我在保存图像文件时遇到问题(png和jpeg)。
获取文件并将其保存到字节数组的Java代码:
Dataset<Row> df = spark.read().json(t1RecordRDD);
我的控制器的一部分,通过响应发回文件:
ByteArrayOutputStream output = new ByteArrayOutputStream();
InputStream inputStream = url.openStream(); //url of given file
int n = 0;
byte[] buffer = new byte[1024];
while (-1 != (n = inputStream.read(buffer))) {
output.write(buffer, 0, n);
}
用于将二进制数据保存到文件并执行下载的Javascript代码:
response.setBufferSize(8192);
response.getOutputStream().write(file); //file is byte array
IrfanView给我解码错误。