限制字符串的最大长度

时间:2013-05-15 02:55:33

标签: c# string unity3d

我需要防止字符串超过一定长度,如果是,则截断字符串的最后部分。

我正在使用GUI.TextField从用户那里获取字符串。

2 个答案:

答案 0 :(得分:5)

用一个属性包装它来处理截断:

public SomeClass {
    private const int MaxLength = 20; // for example
    private String _theString;

    public String CappedString {
        get { return _theString; }
        set {
            _theString = value != null && value.Length > MaxLength
                ? value.Substring(0, MaxLength)
                : value;
        }
    }
}

您可以在任何需要实现它的类中应用它。只需转移private字段,常量和属性CappedString

答案 1 :(得分:4)

GUI.TextField允许您传入最大长度。您有两个可供选择:

static function TextField (position : Rect, text : String, maxLength : int) : String
static function TextField (position : Rect, text : String, maxLength : int, style : GUIStyle) : String