0

我有这个方法

TextReader tr = new StreamReader(@"\IPSM\DeviceConfig.EXM");    
int NumOFLines = 6;    
String[] ListLines = new string[NumOFLines];    
for (int i = 1; i < NumOFLines; i++)
{    
    ListLines[i] = tr.ReadLine();    
}    
using (StreamWriter output = File.AppendText(@"\temp\exm.txt"))    
{    
    output.Write(ListLines[5]);    
}    
tr.Close();    
return;

读取它们附加到另一个文本文件的文本文件的第 5 行,输出为

Line1    
Line2LINE5 //from the other text file

我想

Line1    
Line2    
LINE5 //from the other text file

如何让它输出到下一行我仅限于 Compact Framework

4

2 回答 2

2

您可以使用WriteLine用 CrLf 写一行。

        using (StreamWriter output = File.AppendText(@"\temp\exm.txt"))     
        {     
            output.WriteLine(ListLines[5]);     
        }     

因此,您的文件始终以新行结尾(删除或编辑现有文件以确保它)。如果不能,请尝试以下方法:

        using (StreamWriter output = File.AppendText(@"\temp\exm.txt"))     
        {     
            output.WriteLine();
            output.Write(ListLines[5]); 
        }     

WriteLine 应该在 CF 上可用,如果没有,您可以将换行符附加到 Write 的字符串参数

            output.Write(ListLines[5] + Environment.NewLine);  

或者

            output.Write(ListLines[5] + "\r\n");  
于 2012-07-31T15:23:31.450 回答
0

如果您查看此链接中的示例,它显示了“Environment.NewLine”的使用,我不确定您是否可以在紧凑框架上使用它,但值得一试。http://msdn.microsoft.com/en-us/library/ms143356.aspx

于 2012-07-31T15:27:02.217 回答