在文件路径上插入

本文关键字:插入 路径 文件 | 更新日期: 2023-09-27 18:10:20

现在我有文件输出到一个路径;"C: ' '丹尼尔' Average.txt用户"

我正试图编写一个函数来输入当前时间戳在"平均"之后,但在。txt

之前

我知道这很基本,但是我不知道从哪里开始…

编辑:我最初是硬编码的;string path = "C:'Users'Daniel'Average.txt";

在文件路径上插入

你可以用这个代替:

var outputFile = @"C:'Users'Daniel'Average.txt";
var outputDir = Path.GetDirectoryName(outputFile);
var fileWithTimeStamp = string.Format("{0}_{1}{2}", Path.GetFileNameWithoutExtension(outputFile),
                                 DateTime.Now.ToString("yyyyMMddHHmmssffff"),
                                 Path.GetExtension(outputFile));
var outputWithTimeStamp = Path.Combine(outputDir, fileWithTimeStamp);

My Test with LINQPad:

outputWithTimeStamp.Dump();

C:'Users'Daniel'Average_201304230828184465.txt

您可以使用Path.GetFileNameWithoutExtension

var info=new FileInfo(@"C:'Users'Daniel'Average.txt");
var span=TimeSpan.FromTicks(DateTime.Now.Ticks).ToString();
var name=Path.GetFileNameWithoutExtension(info.FullName);
name=(new[] { name, span, info.Extension }).Aggregate(String.Concat);

name是你最后想要的。

还有另一种与全名组合的方法:

var info=new FileInfo(@"C:'Users'Daniel'Average.txt");
var span=TimeSpan.FromTicks(DateTime.Now.Ticks).ToString();
var fullName=info.FullName;
var length=fullName.LastIndexOf(info.Extension);
fullName=fullName.Substring(0, length);
fullName=(new[] { fullName, span, info.Extension }).Aggregate(String.Concat);

我想这样做会对你有用的:

StreamWriter sw = new StreamWriter("C:'Users'Daniel'Average"+DateTime.Now.ToString(ADD_FORMAT_HERE) +".txt");

然后您需要将内容转储到文件中

Try string.format:

string Today = DateTime.Now.ToString("MMMM_dd");
string name = string.Format(@"Average_{0}.txt",Today);

您可以更改DateTime.Now.ToString(,以包括秒,分钟等…

//设置一个字符串变量保存你的输出

字符串输出;

文件。WriteAllText("C:'Users'Daniel'Average" + DateTime。现在+ ".txt",输出);

将创建文本文件并将输出写入该文件。