Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / 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

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- XmlAtomicValue.cs
- XmlWellformedWriter.cs
- StringResourceManager.cs
- DefaultObjectSerializer.cs
- ColorConvertedBitmapExtension.cs
- OleDbParameter.cs
- EpmCustomContentWriterNodeData.cs
- WebPartEditorCancelVerb.cs
- HttpApplication.cs
- BamlWriter.cs
- AuthenticationException.cs
- TypeForwardedToAttribute.cs
- RsaSecurityToken.cs
- CriticalHandle.cs
- GZipStream.cs
- ProgressBarRenderer.cs
- HtmlToClrEventProxy.cs
- DomainConstraint.cs
- SystemUdpStatistics.cs
- ConnectionConsumerAttribute.cs
- RuntimeHandles.cs
- HitTestFilterBehavior.cs
- OleDbDataAdapter.cs
- LinqDataSourceContextEventArgs.cs
- SectionInput.cs
- CatalogPart.cs
- RectAnimation.cs
- ConfigXmlWhitespace.cs
- SqlServices.cs
- WebServiceEnumData.cs
- OdbcFactory.cs
- EventItfInfo.cs
- SortedDictionary.cs
- RegistryKey.cs
- ContextBase.cs
- EditingCommands.cs
- GradientSpreadMethodValidation.cs
- KeyboardInputProviderAcquireFocusEventArgs.cs
- ToolTipAutomationPeer.cs
- Metafile.cs
- MessageEncoderFactory.cs
- ComponentRenameEvent.cs
- System.Data_BID.cs
- Context.cs
- ExtenderProvidedPropertyAttribute.cs
- QueryAccessibilityHelpEvent.cs
- ModifierKeysConverter.cs
- SourceFileInfo.cs
- DateTimeOffsetStorage.cs
- ServiceNameElement.cs
- DataGridPageChangedEventArgs.cs
- BreakRecordTable.cs
- SystemTcpStatistics.cs
- ServiceSecurityAuditBehavior.cs
- Tablet.cs
- ReachPrintTicketSerializerAsync.cs
- InvokeHandlers.cs
- TransformationRules.cs
- EntitySqlQueryCacheKey.cs
- RemotingConfiguration.cs
- PathTooLongException.cs
- SignatureHelper.cs
- SelectionUIService.cs
- UIElementPropertyUndoUnit.cs
- PersonalizationProvider.cs
- EntityTransaction.cs
- ProfileProvider.cs
- ConfigsHelper.cs
- SqlCommand.cs
- FtpWebResponse.cs
- DebugView.cs
- HotSpotCollection.cs
- PropertyIDSet.cs
- DependencyObjectPropertyDescriptor.cs
- WebSysDisplayNameAttribute.cs
- MouseButtonEventArgs.cs
- DispatcherExceptionEventArgs.cs
- ToolStripComboBox.cs
- Reference.cs
- UIntPtr.cs
- SettingsBase.cs
- SendMailErrorEventArgs.cs
- MetadataCache.cs
- FormsAuthenticationCredentials.cs
- ArgumentValidation.cs
- InputScopeNameConverter.cs
- EdmToObjectNamespaceMap.cs
- XamlTypeMapper.cs
- SessionMode.cs
- ProcessManager.cs
- GeometryCollection.cs
- EpmSyndicationContentSerializer.cs
- TargetException.cs
- CodeAttributeArgumentCollection.cs
- WindowsRichEditRange.cs
- ContextDataSourceContextData.cs
- FormattedTextSymbols.cs
- DataControlFieldsEditor.cs
- PcmConverter.cs
- LinkClickEvent.cs