84 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			84 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| /***********************************************************************
 | |
|  *
 | |
|  *  Copyright (C) 2005-2006 Novell, Inc. All Rights Reserved.
 | |
|  *
 | |
|  *  This library is free software; you can redistribute it and/or
 | |
|  *  modify it under the terms of the GNU Lesser General Public
 | |
|  *  License as published by the Free Software Foundation; version 2.1
 | |
|  *  of the License.
 | |
|  *
 | |
|  *  This library is distributed in the hope that it will be useful,
 | |
|  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 | |
|  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | |
|  *  Library Lesser General Public License for more details.
 | |
|  *
 | |
|  *  You should have received a copy of the GNU Lesser General Public
 | |
|  *  License along with this library; if not, Novell, Inc.
 | |
|  *
 | |
|  *  To contact Novell about this file by physical or electronic mail,
 | |
|  *  you may find current contact information at www.novell.com.
 | |
|  *
 | |
|  ***********************************************************************/
 | |
| 
 | |
| using System;
 | |
| // using System.Collections.Generic;
 | |
| using System.Text;
 | |
| 
 | |
| namespace Novell.CASA.MiCasa.Common
 | |
| {
 | |
|     class Utils
 | |
|     {
 | |
|         public static string EscapeReservedChars(string origString)
 | |
|         {
 | |
|             StringBuilder sb = new StringBuilder();
 | |
|             for (int i = 0; i < origString.Length; i++)
 | |
|             {
 | |
|                 switch (origString[i])
 | |
|                 {
 | |
|                     case ':':
 | |
|                         {
 | |
|                             sb.Append("\\");
 | |
|                             break;
 | |
|                         }
 | |
|                     case '\\':
 | |
|                         {
 | |
|                             sb.Append("\\");
 | |
|                             break;
 | |
|                         }
 | |
|                     case '=':
 | |
|                         {
 | |
|                             sb.Append("\\");
 | |
|                             break;
 | |
|                         }
 | |
| 
 | |
|                 }
 | |
|                 sb.Append(origString[i]);
 | |
|             }
 | |
|             return sb.ToString();
 | |
|         }
 | |
| 
 | |
|         public static string UnescapeString(string sOrig)
 | |
|         {
 | |
|             StringBuilder sb = new StringBuilder();
 | |
|             for (int i = 0; i < sOrig.Length; i++)
 | |
|             {
 | |
|                 if (sOrig[i].Equals('\\'))                    
 | |
|                 {
 | |
|                     if (i + 1 < sOrig.Length)
 | |
|                     {
 | |
|                         if (sOrig[i + 1].Equals(':')
 | |
|                             || sOrig[i + 1].Equals('\\')
 | |
|                             || sOrig[i + 1].Equals('='))
 | |
|                         {
 | |
|                             i++;                           
 | |
|                         }                        
 | |
|                     }                                            
 | |
|                 }
 | |
| 
 | |
|                 sb.Append(sOrig[i]);
 | |
|             }
 | |
|             return sb.ToString();
 | |
|         }
 | |
|     }
 | |
| }
 |