2017-03-21 173 views
-3


有時,當我打開某個文件時,Visual Studio會顯示一個關於不一致行結束符的對話框,但Visual Studio能夠規範行結束符。
如何使用C#自行標準化文件中的行尾(Windows CR LF)?處理不一致的行結束符

我從SQL Server中讀取存儲過程的定義並將其保存到文件中。

File.WriteAllText("procedure.sql", "content"); 

但是,當我在Visual Studio中打開文件時,它會給出關於不一致行尾的警告。當我想修改存儲過程時,SQL Server Management Studio也顯示相同的警告。

+0

也許寫一些代碼來做到這一點? – DavidG

+0

使用StreamReader讀取文件並將其寫回。你有什麼嘗試? – CodeCaster

+0

@DavidG是的,我發現了類似的問題,但它不適用於我的情況。 – user2250152

回答

0

如果你想正常化\r\n那麼這應該足夠:

string filename = "somefile.txt"; 
var lines = File.ReadAllLines(filename); 
File.WriteAllLines(filename, lines); 

(它的工作原理,因爲ReadAllLines同時接受\r\n\r\n,然後就寫WriteAllLines總是使用\r\n)。

請注意,這不會保留編碼(例如,UTF8的初始BOF的存在與否,或者文件是否爲Unicode)。該文件將以不含BOM的UTF8編寫。

相關問題