0
,當我使用此代碼從註冊表中讀取值:C#,壞字符讀取註冊表值
appManufacturer = (string)subKey.GetValue("Publisher");
當我在調試過程中查看字符串的值是「Microsoft \ 0」。爲什麼? 「\ 0」來自哪裏?我在這裏做錯了什麼?
,當我使用此代碼從註冊表中讀取值:C#,壞字符讀取註冊表值
appManufacturer = (string)subKey.GetValue("Publisher");
當我在調試過程中查看字符串的值是「Microsoft \ 0」。爲什麼? 「\ 0」來自哪裏?我在這裏做錯了什麼?
以下代碼將允許您獲取註冊表值。
string keyname = "SAVCE";
Console.WriteLine(Read(keyname));
public static string Read(string KeyName)
{
using (RegistryKey registryKey = Registry.LocalMachine.OpenSubKey(@"Software\Symantec\InstalledApps"))
{
return (string)registryKey.GetValue(KeyName);
}
}
儘管這個鏈接可能回答這個問題,但最好在這裏包含答案的基本部分,並提供供參考的鏈接。如果鏈接頁面更改,則僅鏈接答案可能會失效。 – Marusyk
它一直存在... [相關閱讀:什麼是\ 0符號在C字符串是什麼意思?(http://stackoverflow.com/q/4711449/1324033) – Sayse
@Sayse雖然解釋它是什麼,它不能解釋爲什麼它在那裏。如果註冊管理機構存儲空字符,則可以期望.NET庫自動處理該字符。這就是說,我已經通過.NET訪問過註冊表項,並且從來沒有遇到過null-char,所以對這個入口看起來有點可疑。 – Rob
@Rob - 我更想解釋它是什麼,而不是提供解決方案 – Sayse