You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#中TrimEnd去除度符号失效问题求助

问题分析与解决方案

嘿,我来帮你弄明白为啥TrimEnd('°')没起作用~

核心原因:TrimEnd的工作逻辑你可能理解错了

TrimEnd(char)方法是从字符串的末尾开始,逐个检查字符,只要遇到你指定的字符(这里是'°')就移除,直到碰到第一个不是该字符的位置才停止。

看你的字符串:"+0°1,0'",它的最后一个字符是单引号',根本不是°,所以TrimEnd('°')从头到尾找不到任何可以移除的目标字符,自然返回和原字符串一模一样的结果啦。

正确提取度数部分的方法

如果你想拿到°前面的度数内容(也就是"+0"),可以试试这两种常用方法:

方法1:用IndexOf定位后截取

string txt = "+0°1,0'";
int degreeSymbolPos = txt.IndexOf('°');
if (degreeSymbolPos != -1) // 确保字符串里确实有°符号
{
    string degree = txt.Substring(0, degreeSymbolPos);
    // 此时degree的值就是"+0"
}

方法2:用Split分割字符串

string txt = "+0°1,0'";
string[] splitParts = txt.Split('°');
if (splitParts.Length > 0)
{
    string degree = splitParts[0];
    // 同样能得到"+0"
}

再补个TrimEnd的正确使用场景例子

要是你的字符串是"+0°°°"(末尾是连续的°),那TrimEnd('°')就会把末尾所有的°都去掉,返回"+0"——这才是它的正确打开方式哦。

内容的提问来源于stack exchange,提问作者Felipe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.08 21:28:14