[50分] 将多个文本文件合并为一个
有如下几个文本文件:
1.txt
--------------------
姓名 年龄 性别
XXX XX X
XXX XX X
XXX XX X
XXX XX X
2.txt
--------------------
姓名 年龄 性别
XXX XX X
XXX XX X
XXX XX X
XXX XX X
3.txt
--------------------
姓名 年龄 性别
XXX XX X
XXX XX X
XXX XX X
XXX XX X
要合并成:
4.txt
--------------------
姓名 年龄 性别
XXX XX X
XXX XX X
XXX XX X
XXX XX X
XXX XX X
XXX XX X
XXX XX X
XXX XX X
XXX XX X
XXX XX X
XXX XX X
XXX XX X
XXX XX X
XXX XX X
XXX XX X
XXX XX X
我想问的是,如何处理表头?第一行是标题行,除了1.txt以外,其他txt文件的第一行都不要。该咋写?
[解决办法]
文件的数据存放格式 是这样的吗?
姓名 年龄 性别
XXX XX X
XXX XX X
XXX XX X
XXX XX X
XXX XX X
XXX XX X
------解决方案--------------------
用SQL Server的DTS转一下,把这几个文件当数据库的表来读就可以了.
[解决办法]
随便写了一个
List <string> ar = new List <string> ();
string[] Files = new string[] { "D:\\1.txt ", "D:\\2.txt ", "D:\\4.txt ", "D:\\4.txt " };
for (int i = 0; i < Files.Length; i++)
{
List <string> tep = new List <string> ();
tep.AddRange(File.ReadAllLines(Files[i],Encoding.GetEncoding( "GB2312 ")));
if (i > 0)
tep.RemoveAt(0);
ar.AddRange(tep);
}
foreach (string s in ar)
{
File.AppendAllText( "D:\\A.txt ", s + Environment.NewLine,Encoding.GetEncoding( "GB2312 "));
}
[解决办法]
StreamWriter sw = new StreamWriter( "1.txt ", true);
using (StreamReader sr = new StreamReader( "2.txt "))
{
sr.ReadLine(); //跳过第一行
string s = sr.ReadLine();
while (s != null)
{
sw.WriteLine(s);
s = sr.ReadLine();
}
sr.Close();
}
sw.Close();
[解决办法]
晕死