我正在尝试根据文件的前10行创建文件。
这是我到目前为止所得到的:
var lines2 = File.ReadLines(fileName).Take(10);
foreach (string newFile in lines2)
{
CreateiniFile(folder, newFile);
}
这是在这里调用CreateiniFile
:
static void CreateiniFile(string directory, string name)
{
string filename = String.Format("File_" + name + ".ini");
string path = Path.Combine(directory, filename);
if (!File.Exists(path))
{
using (StreamWriter sw = File.CreateText(path))
{
sw.WriteLine("Text");
sw.Close();
}
}
}
如果所有10行都有数据,则会创建正确的文件,但如果任何行为空,则会创建文件File_.ini
。
如何根据空值返回停止创建文件?
答案 0 :(得分:1)
如果你想要前10个非空行:
var lines2 = File
.ReadLines(fileName)
.Where(line => !string.IsNullOrEmpty(line))
.Take(10);
如果你想要最多10个第一个非空行:
var lines2 = File
.ReadLines(fileName)
.Take(10)
.Where(line => !string.IsNullOrEmpty(line));