ICSharpCode.NRefactory.CSharp.TextWriterTokenWriter.ConvertString C# (CSharp) Method

ConvertString() public static method

Converts special characters to escape sequences within the given string.
public static ConvertString ( string str ) : string
str string
return string
		public static string ConvertString(string str)
		{
			int i = 0;
			for (; ; i++) {
				if (i >= str.Length)
					return str;
				char c = str[i];
				switch (c) {
				case '"':
				case '\\':
				case '\0':
				case '\a':
				case '\b':
				case '\f':
				case '\n':
				case '\r':
				case '\t':
				case '\v':
					goto escapeChars;
				default:
					if (char.IsControl(c) || char.IsSurrogate(c) || (char.IsWhiteSpace(c) && c != ' '))
						goto escapeChars;
					break;
				}
			}

escapeChars:
			StringBuilder sb = new StringBuilder();
			if (i > 0)
				sb.Append(str, 0, i);
			for (; i < str.Length; i++) {
				char ch = str[i];
				if (ch == '"') {
					sb.Append("\\\"");
				} else {
					AppendChar(sb, ch);
				}
			}
			return sb.ToString();
		}