I think some people failed to grasp the beauty of this line:
pLine = pLine.Substring(0, 1).Replace("&", "") + pLine.Substring(1);
You know the line starts with "&", then you take the substring (0, 1), which gives "&", replace the ampersand by the empty string, and then concatenate the rest of the string. Which is of course equivalent to
pLine = pLine.Substring(1);
The same happens in the first replacement. Plus that the tests for length are unnecessary, and that he might also have just used a regexp to remove all & at the start of the line.
It's like a little cluster of evidence that we're looking at the work from someone who doesn't quite understand how procedural programming works.