C# - 将输出声明为字符串

时间:2011-06-18 18:39:39

标签: c# .net windows string

我有一些代码从文本文件中删除重复的行,然后将结果(没有重复的文本)输出到文件。我怎样才能将此输出声明为字符串?

private static void RemoveDuplicate(string sourceFilePath, string destinationFilePath)
{
    var readLines = File.ReadAllLines(sourceFilePath, Encoding.Default);

    File.WriteAllLines(destinationFilePath, readLines.Distinct().ToArray(), Encoding.Default);
}

2 个答案:

答案 0 :(得分:5)

您可以让方法返回一个字符串值:

private static string RemoveDuplicate(string sourceFilePath, string destinationFilePath)
{
    var readLines = File.ReadAllLines(sourceFilePath, Encoding.Default);
    var result = readLines.Distinct().ToArray();
    File.WriteAllLines(destinationFilePath, result, Encoding.Default);
    return string.Join(Environment.NewLine, result);
}

然后:

string result = RemoveDuplicate("source.txt", "dest.txt");

答案 1 :(得分:0)

应该返回字符串,而不是字符串数组,所以,使用String.join,你可以使用你自己的分隔符来分隔行,我用逗号,你可以使用一个新行。

private static string RemoveDuplicate(string sourceFilePath, string destinationFilePath)
{
var readLines = File.ReadAllLines(sourceFilePath, Encoding.Default);
var result = readLines.Distinct().ToArray();
string resultString =  String.Join(",",ids);
File.WriteAllLines(destinationFilePath, result, Encoding.Default);
return resultString;
}