2010-05-19 191 views
0

我使用Visual Studio 2008在VB.NET中進行編程。 我需要定義一個字符串字面值,它包含等效於Chr(247)的字符「÷」。 我知道內部VS使用UTF-16編碼,但是當源文件寫入磁盤時,它包含此字符的單字節值F7。如何定義包含非ASCII字符的字符串文字?

此源文件由另一個默認使用UTF-8編碼的程序處理,因此無法正確解釋此字符,試圖將其與以下單字節字符組合。 什麼編碼會正確解釋單個字節F7作爲單個字符÷?

另外,有沒有一種方法來表示一個只使用ASCII字符的非ASCII字面值 - 就像使用某種轉義序列一樣?

回答

3

好吧,我一直認爲默認情況下VS使用UTF-8來保存文件。但在編碼ISO 8859-1時÷是F7。如果這不夠你去這裏:how to change source file encoding in csharp project (visual studio/msbuild machine)?

+0

如果你沒有指定編碼,那麼文件是用ASCII(7位數據)寫的。對於完整的ASCII字符集,我使用winndows-1252編碼。 – dbasnett 2010-05-19 13:07:52

+0

在西歐語言環境中,VS2008使用Windows代碼頁來保存文件,除非有字符不適合!非常感謝,那正是我需要的指針。 – Nick 2010-05-19 13:18:58

+0

@dbasnett,no。我可以肯定只關於VS中的C#編輯器,因爲我主要使用它。所以它保存在與ASCII向後兼容的UTF-8中。 – Andrey 2010-05-19 13:28:19

相關問題