我正在制作一个基本程序,当涉及到保存数据时,我试图把它放到.txt中 - 这很好用。问题是,除了日期之外我无法保存秒/小时,所以我的解决方案是获取日期,然后分别在最近的文件上放置1,2,3。我制作的代码是:
static string FileName()
{
string fileName = "";
char last = ' ';
int lastDigit = 0;
string lastDigitString = "";
string directory = Directory.GetCurrentDirectory();
if (File.Exists(DateTime.Now.Date.ToString("dd-MM-yy" + "1") + ".txt"))
{
fileName = Path.GetFileNameWithoutExtension(newFileName + ".txt");
last = fileName[fileName.Length - 1];
lastDigit = int.Parse(last.ToString());
lastDigit = lastDigit + 1;
lastDigitString = lastDigit.ToString();
newFileName = fileName + lastDigitString;
}
else
{
newFileName = DateTime.Now.Date.ToString("dd-MM-yy" + "1");
}
return fileName;
}
将newFileName定义为顶部的全局变量。
public static string newFileName = DateTime.Now.Date.ToString("dd-MM-yy" + "1");
我一直在搞乱一些可能不合适的事情。我的解决方案是获取文件名,然后取下.txt - 这将留下我的名字,我得到名称的最后一位数,然后将其增加一,然后将其添加到新文件的末尾名称。它是'FileName1'然后'FileName12'这是我希望得到的,但是一旦它在那里继续添加'FileName12',这显然是从附加设置为true,但我希望有一个'FileName123'。
答案 0 :(得分:2)
是否要求不使用小时/分钟/秒作为您的文件名?
您正在使用DateTime.Now.Date.ToString(..)
,这将删除小时/分钟/秒数据。您可以使用DateTime.Now.ToString(..)
保留子日数据。
您需要提供自己的格式字符串以生成文件名友好的输出。
答案 1 :(得分:1)
这是因为时间有冒号:并且不支持作为Windows文件