2012-10-24 61 views
0

我有一個應用程序,用戶可以在其中寫入文章並將其顯示在網頁上。我不想將所有文本存儲在數據庫中,而是將其寫入文本文件並以此方式進行存儲。 問題是,我似乎無法讓文件保存格式,即換行符。如果用戶類型寫入和檢索文本文件時保持換行符

Lorem ipsum dolor sit amet,consectetur adipiscing elit。 Sed eget ligula eget quam consectetur ornare。 Integer sed sapien risus,ac tincidunt lectus。 Quisque ultrices mi tortor。 Fusce luctus magna non dolor facilisis imperdiet。 Praesent tempus gravida dolor,坐amet viverra ligula vehicula坐amet。

Donec在sodales nunc fermentum quis中認爲蘇打水。 Proin feugiat feugiat ultrices。 Mauris iaculis libero non nibh sagittis fermentum。 Etiam odio sapien,

pulvinar sed viverra nec,euismod eu massa。 Sed pulvinar diam a velit rhoncus non iaculis mi facilisis。

然後保存,它被保存爲

Lorem存有悲坐阿梅德,consectetur adipiscing ELIT。 Sed eget ligula eget quam consectetur ornare。 Integer sed sapien risus,ac tincidunt lectus。 Quisque ultrices mi tortor。 Fusce luctus magna non dolor facilisis imperdiet。 Praesent tempus gravida dolor,坐amet viverra ligula vehicula坐amet。 Donec在sodales nunc fermentum quis中認爲是蘇打水。 Proin feugiat feugiat ultrices。 Mauris iaculis libero non nibh sagittis fermentum.Etiam odio sapien,pulvinar sed viverra nec,euismod eu massa。 Sed pulvinar diam a velit rhoncus non iaculis mi facilisis。

有沒有什麼辦法可以保持格式化?

當前的代碼

var fileContents = System.IO.File.ReadAllText(Server.MapPath(@"~/Articles/" + articlePost.atclFile + ".txt")); 
articleTextbox.Text = fileContents.Replace(System.Environment.NewLine, "<br/>"); 
+2

顯示一些代碼。 –

+0

@AustinSalonen eddited顯示代碼 –

+0

什麼是'articleTextbox'?一個文本框? –

回答

2

什麼

articleTextbox.Text = fileContents.Replace("\r\n", "<br/>"); 

articleTextbox.Text = fileContents.Replace("\n", "<br/>"); 
+0

您應該使用'System.Environment.NewLine'而不是轉義符(\ n和\ r \ n)。更便攜的方式。 –

+0

此解決方案適用於我,但由於某種原因,Envirorment.NewLine沒有 –

4

您需要替換文本符合HTML換行符突破:

var newText = oldText.Replace(System.Environment.NewLine, "<br/>"); 
+0

可以看看我的代碼,看看您是否可以將我指向正確的方向 –

1

怎麼樣好老

 <pre> ... </pre> 
相關問題