我是编程新手。有没有办法使用
创建多个.txt文件
来自C#中另一个文件的数据
像这样:
1.我们有100个或更多字符串的data.txt
的字符串1
字符串2
STRING3
...
2.我们有 textbox1 和 textbox2 等待用户输入字符串
3。我们需要使用data.txt和textboxes字符串中的字符串创建100个或更多文件:fisrt文件的名称: string1 + textbox1string .txt
在里面我们写道:
textbox2string + string1 + textbox1string
用于创建其他文件的相同模式,第二个 - string2 + textbox1string .txt和第二个 - textbox2string + string2 + textbox1string
对不起我的英语,我不是母语。
答案 0 :(得分:4)
嗯,这听起来像你想要的东西:
string[] lines = File.ReadAllLines("file1.txt");
foreach (string line in lines)
{
File.WriteAllText(line + textbox1.Text + ".txt",
textbox2.Text + line + textbox1.Text);
}
基本上对于像这样的非常简单的任务,File
类中的方法允许一次读取或写入整个文件的“一次性”调用。对于更复杂的事情,您通常需要打开TextReader
/ TextWriter
或Stream
。
如果这不是您所追求的,请提供更多信息。同样,如果您发现代码难以理解,请告诉我们,我们将尝试解释。使用更多变量可以更轻松地完成它:
string[] lines = File.ReadAllLines("file1.txt");
foreach (string line in lines)
{
string newFile = line + textbox1.Text + ".txt";
string fileContent = textbox2.Text + line + textbox1.Text;
File.WriteAllText(newFile, fileContent);
}
编辑:如果要添加目录,则应使用Path.Combine
:
string newFile = Path.Combine(directory, line + textbox1.Text + ".txt");
(你可以只使用字符串连接来实现,但Path.Combine
更好。)
答案 1 :(得分:1)
查看静态File类。它会有很多你想要的东西。
答案 2 :(得分:1)
...不确定
string textbox1string = textbox1.Text, textbox2string = textbox2.Text;
foreach(string line in File.ReadAllLines("data.txt")) {
string path = Path.ChangeExtension(line + textbox1string, "txt");
File.WriteAllText(path, textbox2string + line + textbox1string);
}