【发布时间】:2011-12-18 18:57:11
【问题描述】:
我想在 Visual Studio 中创建一个 Windows 窗体应用程序,该应用程序在单击按钮时写入文本文件。
我有一个 txt 文件(例如 test.txt),其中包含
AAAA
BBBB
CCCC
DDDD
EOS
FFFF
GGGG
HHHH
IIII
EOS
JJJJ
KKKK
LLLL
MMMM
NNNN
EOS
EOF
然后我想把它拆分成多个其他的txt文件
**bag1.txt**
AAAA
BBBB
CCCC
DDDD
EOS
**bag2.txt**
EEEE
FFFF
GGGG
IIII
EOS
**bag3.txt**
JJJJ
KKKK
LLLL
MMMM
NNNN
EOS
EOF
这是代码,
private void read3btn_Click(object sender, EventArgs e)
{
string fileName = textBox1.Text;
TextReader sr = new StreamReader(fileName);
//This allows you to do one Read operation.
string s = sr.ReadToEnd();;
sr.Close();
string[] bags = s.Split(new string[] {"EOS"}, StringSplitOptions.None);
// This will give you an array of strings (minus the EOS field)
// Then write the files...
System.IO.File.WriteAllText(@"D:\Program-program\tesfile\bag1.txt", bags[0] + "EOS"); //< -- Add this you need the EOS at the end field the field
System.IO.File.WriteAllText(@"D:\Program-program\tesfile\bag2.txt", bags[1] + "EOS");
System.IO.File.WriteAllText(@"D:\Program-program\tesfile\bag3.txt", bags[2] + "EOS" + bags[3]);
}}
那么输出就是这样来的
**bag1.txt**
AAAA
BBBB
CCCC
DDDD
EOS
**bag2.txt**
EEEE
FFFF
GGGG
IIII
EOS
**bag3.txt**
JJJJ
KKKK
LLLL
MMMM
NNNN
EOS
EOF
不幸的是bags[1]和bags[2]中的输出在第一行有一个空行,有没有更新代码?
【问题讨论】:
标签: c# text-files streamreader writer