2013-09-05 79 views
7

我正在閱讀CSV文件,並且所有內容都正常工作。所有字段都會到達正確的位置,但它會將®轉換爲 。FileHelpers - 如何閱讀®字符?

var engine = new FileHelperEngine(typeof(T)); 
return engine.ReadStream(new StreamReader(stream)) as T[]; 

有關如何防止這種情況發生的任何想法?

編輯:

隨着富豪的幫助,我得到這個工作:

var engine = new FileHelperEngine(typeof(T), Encoding.UTF8); 
return engine.ReadStream(new StreamReader(stream, Encoding.UTF8)) as T[]; 

我必須設置在這兩個地方的編碼這個工作。否則,我看到了奇怪的結果。

+2

你使用什麼編碼? –

+3

閱讀「** [絕對最低限度的每個軟件開發人員絕對積極必須瞭解Unicode和字符集(無藉口!)](http://www.joelonsoftware.com/articles/Unicode.html)**」Joel斯波斯基。 –

+0

閱讀時請嘗試使用UTF8編碼。 – user65439

回答

6

在您的StreamReader上設置正確的編碼。

http://msdn.microsoft.com/en-us/library/ms143456.aspx

+0

我一直在更改FileHelpers引擎上的編碼,我會嘗試在流上更改它。 –

+3

這是一個名爲'ReadStream'的可疑命名方法,實際上它不讀取流。 – spender

+0

爲我工作。非常感謝!! –