dòng mới:
string escapedNewline = @"\\n";
string cleanupNewLine = escapedNewline.Replace(@"\\n", Environment.NewLine);
HOẶC
string cleanupNewLine = escapedNewline.Replace(@"\\n", "\n");
Tab:
string escapedTab = @"\\t";
string cleanupTab= escapedTab.Replace(@"\\t", "\t");
Lưu ý việc thiếu chuỗi chữ (tức là tôi đã không sử dụng @ "\ t" vì sẽ không đại diện cho một Tab)
Hoặc bạn có thể xem xét Regular Expressions nếu bạn cần thay thế một loạt các mẫu chuỗi khác nhau.
Bạn có lẽ nên viết một hàm tiện ích để đóng gói các hành vi phổ biến trên cho tất cả các thể Escape Sequences
Sau đó, bạn muốn viết một số Unit Tests để trang trải từng trường hợp, bạn có thể nghĩ đến.
Khi bạn gặp phải bất kỳ lỗi nào, bạn thêm nhiều kiểm tra đơn vị hơn để bao gồm các trường hợp đó.
CẬP NHẬT
Bạn có thể đại diện cho một tab trong XML với một chuỗi ký tự đặc biệt:
	
see this article
This article áp dụng cho SQL Server nhưng cũng có thể liên quan đến C# cũng? Để chắc chắn, bạn có thể thử tạo một chuỗi với một tab trong đó và đưa nó vào một số XML (lập trình) và sử dụng XmlSerializer để sắp xếp từng tệp đó để xem đầu ra là gì, sau đó bạn có thể chắc chắn rằng điều này sẽ trung thành 'round-trip' chuỗi với tab vẫn còn trong đó.
Lớp bạn nhận được chuỗi đang làm điều gì đó không chuẩn nên ký tự không còn kiểm soát các ký tự, chúng đã được chuyển đổi (không cần thiết) thành chuỗi dài hơn. Bạn sẽ chỉ phải có một trường hợp đặc biệt để xử lý chúng. – rohancragg
có vẻ quen thuộc !: http://www.infoqu.com/dev/c-programming/weeding-out-control-characters-in-c-30095-1/ – rohancragg
Có thể là một câu hỏi ngu ngốc, nhưng bạn đang xem giá trị trong cửa sổ xem? Cửa sổ đồng hồ sẽ bổ sung thêm \ vì vậy bạn có chắc chuỗi là "\\ t" không? – Geoff