我有一個從UTF8編碼存儲的XML文件中讀取的文本。 C#完全讀取它,我使用調試器進行了檢查,但是當我嘗試將其轉換爲ASCII以將其保存在另一個文件中時,我得到了一個?在有衝突的角色的地方燒焦。舉例來說,這樣的文字:從UTF8到ASCII的轉換
string s = "La introducción masiva de las nuevas tecnologías de la información";
將被保存爲
"La introducci?n masiva de las nuevas tecnolog?as de la informaci?n"
我不能代替他們的拉丁(A,E,I,O,U)元音,因爲有些詞在西班牙語會錯過了感覺。我已經試過this和this沒有成功的問題。所以我希望有人能幫助我。第二個選定的答案甚至沒有編譯...!
如果有人想看看,我的代碼是這樣的一個:
private void WriteInput(string input)
{
byte[] byteArray = Encoding.UTF8.GetBytes(input);
byte[] asciiArray = Encoding.Convert(Encoding.UTF8, Encoding.ASCII, byteArray);
string finalString = Encoding.ASCII.GetString(asciiArray);
string inputFile = _idFile + ".in";
var batchWriter = new StreamWriter(inputFile, false, Encoding.ASCII);
batchWriter.Write(finalString);
batchWriter.Close();
}
怎麼回事?如果ASCII沒有這些字母,我怎樣才能使用Notepad ++將編碼從UTF8更改爲ASCII並且像魅力一樣工作? – 2010-12-04 06:10:33
因爲Notepad ++沒有真正使用ASCII。它使用的是類似CP1250的軟件,它*具有這些字母。 – 2010-12-04 06:13:45