2013-09-05 28 views
7

Bir CSV dosyasında okuyorum ve her şey düzgün çalışıyor. Tüm alanlar doğru yerlere gidiyor, ama ® değerini 'ye çeviriyor.FileHelpers - ® karakterde nasıl okunur?

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

Bunun nasıl engelleneceği ile ilgili herhangi bir fikir var mı?

DÜZENLEME: Ben bu işe aldık müsrif yardımıyla

: Ben bunun işe yaraması için İKİ yerlerde kodlamasını ayarlamak zorunda

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

. Aksi halde garip sonuçlar gördüm.

+2

Hangi kodlamayı kullanıyorsunuz? –

+3

"** [Mutlak Asgari Her Yazılım Geliştiricisi Mutlak, Unicode ve Karakter Setleri Hakkında Olmalı Olmalı Olmalıdır (Mazeret Yok!)] (Http://www.joelonsoftware.com/articles/Unicode.html) **" Joel Spolsky. –

+0

Okurken UTF8 kodlamasını kullanmayı deneyin. – user65439

cevap

6

StreamReader'ınızdaki doğru kodlamayı ayarlayın.

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

+0

FileHelpers Engine'de Kodlamayı değiştiriyorum, şimdi akışta değiştirmeye çalışacağım. –

+3

Aslında, akışını okumayan "ReadStream" adlı şüpheli olarak adlandırılmış bir yöntem. Benim için çalışan – spender

+0

. Çok teşekkürler!! –