C# Encoding a text string with line breaks
I have a string I am writing to the outputstream of the response. After I save this document and open it in Notepad++ or WordPad I get nicely formatted line breaks where they are intended, but when I open this document with the regular old Windows Notepad, I get one long text string with □ (square like symbols) where the line breaks should be.
Has anyone had any experience with this?
Solution 1:
Yes - it means you're using \n
as the line break instead of \r\n
. Notepad only understands the latter.
(Note that Environment.NewLine
suggested by others is fine if you want the platform default - but if you're serving from Mono and definitely want \r\n
, you should specify it explicitly.)
Solution 2:
Use Environment.NewLine for line breaks.
Solution 3:
Try this :
string myStr = ...
myStr = myStr.Replace("\n", Environment.NewLine)
Solution 4:
Try \n\n , it will work! :)
public async Task AjudaAsync(IDialogContext context, LuisResult result){
await context.PostAsync("How can I help you? \n\n 1.To Schedule \n\n 2.Consult");
context.Wait(MessageReceived);
}
Solution 5:
Also:
string s = $"first line{Environment.NewLine}second line";