File.WriteAllText(filePath, sb.ToString(), Encoding.UTF8);改为如果存在txt且更新时间为当前小时则将内容追加
时间: 2024-03-24 14:41:06 浏览: 12
你可以按照以下步骤修改代码,实现将内容追加到现有文件中:
1. 首先,你需要检查文件是否存在以及最后更新时间是否为当前小时。你可以使用以下代码来检查:
```csharp
if (File.Exists(filePath))
{
var lastWriteTime = File.GetLastWriteTime(filePath);
if (lastWriteTime.Hour == DateTime.Now.Hour)
{
// 追加内容到现有文件
}
else
{
// 创建新文件并写入内容
}
}
else
{
// 创建新文件并写入内容
}
```
2. 如果文件存在且最后更新时间为当前小时,则需要将内容追加到现有文件中。你可以使用以下代码来追加内容:
```csharp
using (StreamWriter sw = File.AppendText(filePath))
{
sw.WriteLine(sb.ToString());
}
```
3. 如果文件不存在或最后更新时间不是当前小时,则需要创建一个新文件并写入内容。你可以使用以下代码来创建新文件并写入内容:
```csharp
using (StreamWriter sw = new StreamWriter(filePath, false, Encoding.UTF8))
{
sw.WriteLine(sb.ToString());
}
```
4. 最终,你的代码应该是这样的:
```csharp
if (File.Exists(filePath))
{
var lastWriteTime = File.GetLastWriteTime(filePath);
if (lastWriteTime.Hour == DateTime.Now.Hour)
{
// 追加内容到现有文件
using (StreamWriter sw = File.AppendText(filePath))
{
sw.WriteLine(sb.ToString());
}
}
else
{
// 创建新文件并写入内容
using (StreamWriter sw = new StreamWriter(filePath, false, Encoding.UTF8))
{
sw.WriteLine(sb.ToString());
}
}
}
else
{
// 创建新文件并写入内容
using (StreamWriter sw = new StreamWriter(filePath, false, Encoding.UTF8))
{
sw.WriteLine(sb.ToString());
}
}
```