2011-11-21 58 views
2

我需要定製AX以加載任意大小的任意文件並將其作爲容器字段保存到數據庫。我還需要從該容器字段回讀並將內容寫入文件,該文件應該包含與加載之前完全相同的文件內容。Axapta:從容器字段加載並保存文件

我曾試圖與BinaryIO,遺憾的是,沒有運氣

回答

5

答案this question適用。 特別是您應該使用系統類別BinData和方法loadFilesaveFile

示例:該作業將notepad程序複製到臨時目錄。

static void BinDataTest(Args _args) 
{ 
    BinData b = new BinData(); 
    Container c; 
    b.loadFile(@"C:\Windows\notepad.exe"); 
    info(int2str(b.size())); 
    c = b.getData(); 
    b = new BinData(); 
    b.setData(c); 
    info(int2str(b.size())); 
    b.saveFile(@"C:\Temp\notepad.exe"); 
} 
+0

感謝嗨月,加載完成集裝箱場(雖然我不知道它是否包含正確的數據(僅BLOB?eventhough什麼,我加載是一個二進制數據而不是圖像。然後我嘗試通過saveFile - setData將該容器字段保存到磁盤,不幸的是,保存的文件是一個零字節的空文件 – user733916

+0

在調試器中,容器BLOB的大小是多少?它應該完全匹配文件的大小。更新。 –