[英]How to change Unix Line feed to Windows Line Feed with C#
我正在嘗試編寫一個unix2dos程序來更改文本文件的換行。 問題在於,沒有更改文本文件的內容,而是附加了文件名。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace unix2dos
{
class Program
{
static void Main(string[] args)
{
string[] filePaths = Directory.GetFiles(@"c:\textfiles\", "*.txt");
foreach (string file in filePaths)
{
string[] lines = File.ReadAllLines(file);
foreach (string line in lines)
{
string replace = line.Replace("\n", "\r\n");
File.WriteAllText(file, replace);
}
}
}
}
}
因為您正在寫字符串並覆蓋它。
嘗試這個:
string[] filePaths = Directory.GetFiles(@"c:\textfiles\", "*.txt");
foreach (string file in filePaths)
{
string[] lines = File.ReadAllLines(file);
List<string> list_of_string = new List<string>();
foreach (string line in lines)
{
list_of_string.Add( line.Replace("\n", "\r\n"));
}
File.WriteAllLines(file, list_of_string);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.