2010-10-28 35 views
1

如何從c#全編碼的文件中讀取任何n字符? 我的意思是不讀字節!我想一次只讀一個字符(任何編碼)?如何從文件中讀取任何字符?

+0

如果你不知道你的文字是如何在文件中編碼的做,你將無法從中讀取一個字符:編碼定義瞭如何從字節流中讀取特定字符。如果現有編碼不適合您的需要,您甚至可以創建自己的編碼。結果很簡單:如果你不知道如何閱讀某些內容,則無法閱讀。您必須對您的內容做出假設才能使用它。 – Eilistraee 2010-10-28 10:38:57

+0

爲了從文件中讀取字符,首先需要知道它是什麼編碼。 – Oded 2010-10-28 10:39:45

+1

這個角色是由任何鍵生成的? – leppie 2010-10-28 10:39:58

回答

3

使用TextReader.Read(),可能通過StreamReader,從TextReader繼承。

-2

試試這個:

char[] c = new char[5]; 
using (StreamReader streamReader = File.OpenText("c:\test.txt")) 
{ 
    streamReader.Read(c, 0, c.Length); 
} 

更新

我才意識到,這僅僅是爲了UTF8編碼,並沒有進一步的參數可用於指定編碼。

+0

不要浪費你的時間來嘗試這個。 – leppie 2010-10-28 10:47:35

+0

不解決。 – phrozen 2010-10-28 10:48:38

+0

試試這個角色「abcçdefgğ_aaabbb_û»ø½ù¯þ¸²²^¬©¡®B7T; @R콓」我想從文件 – phrozen 2010-10-28 10:50:59

-2
StreamReader reader = new StreamReader("date.txt"); 
string txt = reader.ReadToEnd(); 
txt(char num); 

這不是最有效的,但也不是C#這樣:/

+0

TY讀取的最後4個字符,但在大文件時,它是沒有效率的。例如,我想從一個大文件中讀取最後4個字符......我該怎麼做? – phrozen 2010-10-28 10:59:01

+0

我認爲你需要使用其中涉及的一些字節知識文件流 – Will03uk 2010-10-28 14:50:10