簡體   English   中英

如何讀取上傳的Blob的內容?

[英]How to read the contents of an uploaded blob?

我正在使用Blobstore使用此文檔上傳簡單的文本文件: https : //cloud.google.com/appengine/docs/java/blobstore/#Java_Uploading_a_blob 我從文檔中了解了如何保存Blob並將其提供給用戶,但我不了解處理文件上傳的servlet如何實際讀取文本文件的內容?

我找到了答案。 這是代碼:

Map<String, List<FileInfo>> infos = blobstoreService.getFileInfos(request);
Long fileSize = infos.get("myFile").get(0).getSize();
Map<String, List<BlobKey>> blobKeys = blobstoreService.getUploads(request);
byte[] fileBytes = 
        blobstoreService.fetchData(blobKeys.get("myFile").get(0), 0, fileSize);
String input = new String(fileBytes);

在python中,有BlobReader類可以幫助您完成此操作。 https://cloud.google.com/appengine/docs/python/blobstore/blobreaderclass

好像您正在使用Java。 Java中似乎沒有等效的類。 我要做的就是使用GCS作為blobstore的支持( https://cloud.google.com/appengine/docs/java/blobstore/#Java_Using_the_Blobstore_API_with_Google_Cloud_Storage )。 這樣,上傳到Blob存儲區的文件將可以在GCS中訪問。

然后,您可以使用GCS Java客戶端庫讀取文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM