I think your problem was the fact that you are grabbing 1 char past the end of the string. In the function below the for loop has
Credit_Value_String.length -1.
If your string is not an even number of chars you will also overrun the string length so added:
(Credit_Value_String.Length < i+2) ?
static string AnotherCrazyParsingMethod(string Credit_Value_String)
{
StringBuilder ValueUPDwn = new StringBuilder();
for (int i = 0; i < Credit_Value_String.Length; i += 2)
{
ValueUPDwn.AppendFormat("{0}{1} ", Credit_Value_String[i], (Credit_Value_String.Length < i+2) ? '\0' : Credit_Value_String[i + 1]);
}
return ValueUPDwn.ToString();
}