[英]How to get Blob Key of file to be downloaded from BlobStore in Java?
[英]How to get uploaded excel file from blobstore and how to assign that file to FileInputStream
我正在使用GWT Java进行项目。 我将Excel文件上传到了Google App Engine中的Blobstore中。 我想从blobstore读取Excel文件。 因此,我必须将excel文件从blobstore分配给FileInputStream。
例:
FileInputStream file = new FileInpuStream("what is path shall i provide here")
将Blobstore中的excel文件分配给FileInputStream的可能方法是什么? 有什么帮助吗?
提前致谢
Apache POI XSSFWorkbook
接受File
或InputStream
。 假设您可以通过BlobstoreInputStream
实例访问Blob对象,则可以调用:
// BlobKey blobKey = initialize your blob key
XSSFWorkbook wb = new XSSFWorkbook(new BlobstoreInputStream(blobKey));
您可以通过以下方式访问Blobstore
:
public class Upload extends HttpServlet {
private BlobstoreService blobstoreService = BlobstoreServiceFactory.getBlobstoreService();
@Override
public void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
Map<String, List<BlobKey>> blobs = blobstoreService.getUploads(req);
List<BlobKey> blobKeys = blobs.get("myFile");
if (blobKeys != null && !blobKeys.isEmpty()) {
XSSFWorkbook wb = new XSSFWorkbook(new BlobstoreInputStream(blobKeys.get(0)));
}
}
}
进一步阅读: Blobstore Java API概述
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.