SORU
9 Mayıs 2009, CUMARTESİ


.Eski vb solun Net eşdeğer(string, uzunluk) fonksiyonu?

Bir sigara gibi .net programcı ben arıyorum .eski vb net eşdeğeri left(string, length) işlevi. Herhangi bir uzunlukta bir dize için çalıştı o tembel oldu. , left("foobar", 3) = "foo" beklendiği gibi, en yardımsever, left("f", 3) = "f".

.net string.Substring(index, length) menzil dışında her şey için istisnalar atar. Java hep Apache Commons lang vardı.StringUtils kullanışlı. Google çok fazla dize işlevleri arıyor anlamıyorum.

Düzenleme:

@Noldorin- Vay, VB.NET için teşekkür ederim uzantıları! Bana birkaç saniye aynısını alsa da ilk karşılaşmam, c#:

public static class Utils
{
    public static string Left(this string str, int length)
    {
        return str.Substring(0, Math.Min(length, str.Length));
    }
}

Statik sınıf ve yöntemi olarak this anahtar kelime not. Evet, "foobar".Left(3) olarak çağırmak kadar basit. Ayrıca c# extensions on msdn bkz.

CEVAP
9 Mayıs 2009, CUMARTESİ


Burada iş yapacak bir uzantısı yöntemi.

<System.Runtime.CompilerServices.Extension()> _
Public Function Left(ByVal str As String, ByVal length As Integer) As String
    Return str.Substring(0, Math.Min(str.Length, length))
End Function

Bu eski Left fonksiyon (12 *yani* ) VB veya daha yeni VB.NET sözdizimini kullanarak gibi kullanabilirsiniz anlamına gelir, yani

Dim foo = "f".Left(3) ' foo = "f"
Dim bar = "bar123".Left(3) ' bar = "bar"

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Learn word 2013 tutorials

    Learn word 2

    5 AĞUSTOS 2014
  • waterfairy17

    waterfairy17

    9 Aralık 2007
  • wolfys you tube

    wolfys you t

    22 Kasım 2006