вы можете сделать что-то вроде:
string str = str.Replace(@"\n","\n");
Обновление:
Очевидно, что это обходной путь, поскольку сценарий сам по себе "неестественен". Решение Regex.Unescape
здесь неприменимо, поскольку оно предназначено для использования для неэкранированных управляющих символов регулярного выражения, а не для новых строк и т. Д.
Для поддержки других соответствующих символов можно написать заменяющую функцию, подобную этой:
public string ReEscapeControlCharacters(string str) {
return str.Replace(@"\n","\n").Replace(@"\r","\r").Replace(@"\t","\t");
}