StringUtil.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / ndp / fx / src / DataWeb / Design / system / Data / Common / Utils / StringUtil.cs / 1 / StringUtil.cs

                            //---------------------------------------------------------------------- 
// 
//      Copyright (c) Microsoft Corporation.  All rights reserved.
// 
// 
// @owner [....]
// @backupOwner [....] 
//--------------------------------------------------------------------- 

 
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text; 
using System.Globalization;
using System.Diagnostics; 
 
namespace System.Data.Common.Utils {
 
    // This class provides some useful string utilities, e.g., converting a
    // list to string.
    internal static class StringUtil {
 
        /// 
        ///   This private static method checks a string to make sure that it is not empty. 
        ///   Comparing with String.Empty is not sufficient since a string with nothing 
        ///   but white space isn't considered "empty" by that rationale.
        ///  
        internal static bool IsNullOrEmptyOrWhiteSpace(string value)
        {
            return IsNullOrEmptyOrWhiteSpace(value, 0);
        } 

        internal static bool IsNullOrEmptyOrWhiteSpace(string value, int offset) 
        { 
            // don't use Trim(), which will copy the string, which may be large, just to test for emptyness
            //return String.IsNullOrEmpty(value) || String.IsNullOrEmpty(value.Trim()); 
            if (null != value)
            {
                for(int i = offset; i < value.Length; ++i)
                { 
                    if (!Char.IsWhiteSpace(value[i]))
                    { 
                        return false; 
                    }
                } 
            }
            return true;
        }
 
        // separate implementation from IsNullOrEmptyOrWhiteSpace(string, int) because that one will
        // pick up the jit optimization to avoid boundary checks and the this won't is unknown (most likely not) 
        internal static bool IsNullOrEmptyOrWhiteSpace(string value, int offset, int length) 
        {
            // don't use Trim(), which will copy the string, which may be large, just to test for emptyness 
            //return String.IsNullOrEmpty(value) || String.IsNullOrEmpty(value.Trim());
            if (null != value)
            {
                length = Math.Min(value.Length, length); 
                for(int i = offset; i < length; ++i)
                { 
                    if (!Char.IsWhiteSpace(value[i])) 
                    {
                        return false; 
                    }
                }
            }
            return true; 
        }
    } 
} 

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//---------------------------------------------------------------------- 
// 
//      Copyright (c) Microsoft Corporation.  All rights reserved.
// 
// 
// @owner [....]
// @backupOwner [....] 
//--------------------------------------------------------------------- 

 
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text; 
using System.Globalization;
using System.Diagnostics; 
 
namespace System.Data.Common.Utils {
 
    // This class provides some useful string utilities, e.g., converting a
    // list to string.
    internal static class StringUtil {
 
        /// 
        ///   This private static method checks a string to make sure that it is not empty. 
        ///   Comparing with String.Empty is not sufficient since a string with nothing 
        ///   but white space isn't considered "empty" by that rationale.
        ///  
        internal static bool IsNullOrEmptyOrWhiteSpace(string value)
        {
            return IsNullOrEmptyOrWhiteSpace(value, 0);
        } 

        internal static bool IsNullOrEmptyOrWhiteSpace(string value, int offset) 
        { 
            // don't use Trim(), which will copy the string, which may be large, just to test for emptyness
            //return String.IsNullOrEmpty(value) || String.IsNullOrEmpty(value.Trim()); 
            if (null != value)
            {
                for(int i = offset; i < value.Length; ++i)
                { 
                    if (!Char.IsWhiteSpace(value[i]))
                    { 
                        return false; 
                    }
                } 
            }
            return true;
        }
 
        // separate implementation from IsNullOrEmptyOrWhiteSpace(string, int) because that one will
        // pick up the jit optimization to avoid boundary checks and the this won't is unknown (most likely not) 
        internal static bool IsNullOrEmptyOrWhiteSpace(string value, int offset, int length) 
        {
            // don't use Trim(), which will copy the string, which may be large, just to test for emptyness 
            //return String.IsNullOrEmpty(value) || String.IsNullOrEmpty(value.Trim());
            if (null != value)
            {
                length = Math.Min(value.Length, length); 
                for(int i = offset; i < length; ++i)
                { 
                    if (!Char.IsWhiteSpace(value[i])) 
                    {
                        return false; 
                    }
                }
            }
            return true; 
        }
    } 
} 

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.

                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK