最简单的方法是在C#应用程序中修剪所有字符串 - 或减少Trim()调用次数?

时间:2009-11-25 13:56:55

标签: c# string

很抱歉,如果这个问题没有答案..默认情况下,修复C#应用程序中所有字符串的最简单,最简单的方法是什么? 创建新的类型,扩展方法或属性?是否有任何黑客或设置可以减少Trim()调用次数?

UPD。好吧,我没有特别的情况 - 只是来自UI或Excel或其他东西的很多用户输入,你应该始终牢记和Trim(),Trim(),Trim()。我真的很想知道为什么在C#中默认不修剪字符串。

4 个答案:

答案 0 :(得分:1)

有很多缺点,但你可以这样做:

    class StringT
    {
        private String _s;
        public StringT(String v)
        {
            if (!String.IsNullOrEmpty(v)) { _s = v.Trim(); }
              else { _s = v; }
        }

         public static implicit operator StringT(String v) { return new StringT(v); }

         public static implicit operator String(StringT v) { return v._s; }
    }

答案 1 :(得分:0)

有点难以从问题中说出来;但我可能会创建一个自定义文本框,用Text.Trim()

覆盖Text方法

或者,您可以在公共类中创建一个方法,以修剪传递给它的任何内容。所以在使用任何字符串之前你首先要通过这种方法运行它们。

如果您可以对原始问题进行详细说明,那将有助于

答案 2 :(得分:0)

如果您指的是资源文件或其他内容的字符串,那么只需创建一个获取字符串的实用程序函数,然后在其中调用Trim(),这样您就不必在调用代码时担心它

答案 3 :(得分:0)

如果发现自己经常使用相同范围内的值,那么为了减少调用Trim()的次数,最好的选择是修改一次值并将其存储为变量,即

var trimmedStr = myStr.Trim();

扩展方法毫无意义,因为它几乎相当于调用Trim(),因为我想你只是在内部执行此操作。创建一个自定义类型只是为了确保你的字符串没有空格是有点过度工程和不必要的。

相关问题