0
我目前正在使用jQuery文件上傳器上傳.dcm文件的dicom文件上傳系統。它工作正常,但由於DICOM數據集可能變得非常大,我想在上傳之前用JSZip壓縮文件。使用JSZip壓縮dcm文件
只是我將文件對象傳遞給一個zip函數,該函數返回壓縮文件對象。這與通常已知的文件工作正常,但不與DICOM文件。我已經嘗試在壓縮之前將文件編碼爲base64字符串,但這也不起作用。 JSZip總是拋出我下面的錯誤:
Uncaught Error: The data of 'IM-0001-0001.dcm' is in an unsupported format !
我使用下列文件壓縮功能:
compressFile: function(data) {
var zip = new JSZip();
var file = data.files[0];
zip.file(file.name, file, {binary:false});
content = zip.generate({
compression: 'DEFLATE'
});
return content;
}
我也試圖與Base64和二進制的.file選項,但沒有取得了訣竅。
有沒有人有關如何獲得這項工作的線索?我是一個初學者到JS所以對不起了noobish問題^^
親切的問候
這與DICOM無關。 JSZip不知道該文件是DICOM與任何其他類型的二進制數據。 'zip.file()'的第二個參數應該是數據 - 比如數組或者ArrayBuffer。這很可能是你的問題。 – whiskeyspider
@whiskeyspider是對的,問題是'data.files [0]'的類型。你知道它的類型嗎? –
data.files [0]是一個File對象。我已經修改了我的代碼,將其轉換爲base64,但是這會導致一個空的zip。我會在星期一嘗試你的建議。謝謝 – user285814