我必须创建一个目录,然后在该目录中创建一个文本文件,其名称来自参数。例如。 _year
是一个参数,我试过:
var _root = "C:\\Users\\~\\DirichletProcessClustering\\Results";
var _clusterFilename = _year.ToString() + "cluster.txt";
var _path = Path.Combine(_root, _year.ToString(), _clusterFilename);
if(!Directory.Exists(_path))
{
Directory.CreateDirectory(_path);
}
// output topk file
TextWriter _twClus = File.CreateText(_path);
foreach (// loop )
{
_twClus.WriteLine("Cluster");
//... rest of the implementation...
}
此代码在指定路径创建名为2005
的文件夹,然后在此文件夹内,还有另一个名为2005cluster.txt
的文件夹,而我想在文件夹中创建名为2005cluster.txt
的文本文件2005
。
TextWriter _twClus = File.CreateText(_path);
答案 0 :(得分:0)
尝试这样,以便您的路径在文件名前有斜杠:
var _root = "C:\\Users\\~\\DirichletProcessClustering\\Results\\";
答案 1 :(得分:0)
从路径中删除文件名:
var _path = Path.Combine(_root, _year.ToString());
要定义文件名,您必须将此行代码修改为:
TextWriter _twClus = File.CreateText(Path.Combine(_path, _clusterFilename));
答案 2 :(得分:0)
当你单独定义fileName时,你可以试试这个:
var _root = "C:\\Users\\~\\DirichletProcessClustering\\Results";
var _clusterFilename = _year.ToString() + "cluster.txt";
var _path = Path.Combine(_root, _year.ToString());
if(!Directory.Exists(_path))
{
Directory.CreateDirectory(_path);
}
// output topk file
TextWriter _twClus = File.CreateText(Path.Combine(_path, _clusterFilename));
foreach (// loop )
{
_twClus.WriteLine("Cluster");
//... rest of the implementation...
}