2013-11-14 87 views
1

我們現在正在進口源數據庫X到我們的目標數據庫Y.RTF BLOB通過SQL服務器

X在RTF格式的文本被莫名其妙地顯示在其應用的斑點文件。

我們的Web應用程序無法顯示RTF,所以我們奉命RTF這些斑點轉換成文件在我們的數據庫Y.

我們簡單地複製RTF BLOB從X,它是nvarchar,成我們已經用於存儲附件的Y列,其類型爲varbinary。然後我們把它寫成一個文件foo.rtf當用戶想要查看它 - 所以他們可以下載並在Word中打開RTF。

不幸的是,foo.rtf文件,Word中打開時,看起來就像原始RTF,像

{\rtf1\ansi\ansicpg1252\deff0\deftab1134{\fonttbl{.... 

我們需要什麼,以便正確地轉換該RTF「文本」看待成實際的做RTF文件?它看起來就像保存字節不起作用。

謝謝。

回答

1

您是否使用擴展名.rtf保存文件 - 我知道Word打開RTF文件就好了(假設rtf當然有效)?

ADDED

別的東西是錯誤的,那麼,我做了,我產生.rtf文件有幾千個用戶,複雜的低電平的網站 - 在Word中打開它們不是問題投訴單

增加了更多的

確保您檢查Web服務器爲您的文件服務了正確的MIME類型的文檔(如果呈現在瀏覽器中)。 IIS,APache等以不同的方式執行此操作

+0

是的,我們保存爲.rtf,然後雙擊它在Word中打開。但在Word中,它看起來像原始的RTF。 – royappa

+0

加入回答 –

+0

謝謝。關於「在瀏覽器中渲染」的評論是有用的,因爲我們也應該看看。 – royappa

0

事實證明源代碼和目標編碼是不同的。 我們使用Cast(Cast(Value as Varchar(max)) as Varbinary),這使所有的工作。