我想創建一個頁面Blob,因爲我將來需要隨機訪問,雖然我可以上傳文件,但是當我下載它的大小不同時。Azure Page Blob強制我篡改文件大小
我上傳了「file.docx」,然後下載爲「file2.docx」。下載的文件有點大,實際上它的大小被四捨五入爲頁面大小的頁面大小,512 :)在這種特殊情況下,Microsoft Word給了我一個警告,說文件已損壞,但我仍然可以打開它,內容就是我期待着。
我從這裏得到了代碼示例:Using Windows Azure Page Blobs and How to Efficiently Upload and Download Page Blobs。我已經檢出了代碼來上傳它和文檔,顯然你的頁面上傳必須從512字節邊界開始(startingOffset%512 == 0),並在512邊界上結束 - 1.然後當我需要上傳一個不與512對齊的文件?
例如,如果我有一個550bytes的文件,我上傳並下載它,我會得到一個1024字節的文件,對吧?我該怎麼辦?將原始文件大小保留在元數據中,還是有辦法做到這一點?(或示例)。
在此先感謝。
從我已閱讀的有關Page blobs的文章中,我認爲隨機訪問功能更適合像多用戶在同一頁面blob中編寫不同文件的驅動器。 – 2011-04-18 14:26:42
humm我看到了,但是如果你上傳一個文件,它仍然是一個問題,你不能上傳一個550字節。您必須將原始文件大小保持在某個位置,或者能夠讀取至所有內容爲0. – vtortola 2011-04-18 14:57:44
您可能希望查看佔用的頁面範圍(http://msdn.microsoft.com/zh-cn/library/ee691973.aspx) ,但即使如此,你將不得不訴諸閱讀,直到一切都是0字節。我可以問一下你想用這個單詞文檔(或文件)作爲頁面blob而不是塊blob的用例嗎?你是否設想過多個用戶同時編輯同一個文檔或文件? – 2011-04-18 15:26:51