如何从字符串中得到第三个和第四个字母

本文关键字:三个 四个 字符串 | 更新日期: 2023-09-27 17:50:00

我想从PlayerPrefs.GetString("String")中获取第三和第四个字母和解析为int。例如,

string playerLevelstr = PlayerPrefs.GetString("Player")[2] + PlayerPrefs.GetString("Player")[3];
//My Player string is "0012000000" but when I plus third and fourth letter, playerLevelstr should be "12" but it is "96".
int playerLevelint = int.Parse(playerLevelstr);

如何从字符串中得到第三个和第四个字母

索引器在字符串上返回一个char

如果你同时对char使用+运算符,它实际上是对两个char进行整数运算。

关于这方面的更多信息,请参阅这个问题。

虽然这意味着你应该得到99('1'是49,'2'是50')而不是96。但也许是一端打错了,还是另一端打错了?

无论如何,您应该将char s转换为string s(它们上的.ToString())或使用string上的Substring函数。不要忘记长度/空值检查!

此代码PlayerPrefs.GetString("Player")[2]返回一个char,当您将其添加到另一个char时,它正在被转换为int(是字符的ASCII值)。

这样做:

string playerLevelstr = PlayerPrefs.GetString("Player").Substring(2,2);