我正在写一个博客,我将文本文档上传到包含 HTML 的目录。使用下面的代码,您是否预计我会遇到文件锁定问题或其他我没有看到的问题?我最关心的是 File.ReadAllText()。
该目录将包含一个文件列表,例如:
20120101_2300.txt
20120201_0100.txt
ETC...
public class Website
{
private string directory = "C:\\Web";
public List<BlogEntry> GetArchives()
{
return GetArchives("");
}
public List<BlogEntry> GetArchives(string date)
{
var files = !string.IsNullOrEmpty(date) ? Directory.GetFiles(directory, "*.txt").Where(t => t.Contains(date)) : Directory.GetFiles("C:\\Web", "*.txt");
var sb = files.Select(file => new BlogEntry {FullPath = file}).ToList();
return sb.OrderByDescending(t => t.FileDate).Skip(5).ToList();
}
public List<BlogEntry> GetRecent()
{
var files = Directory.GetFiles(directory, "*.txt");
var sb = files.Select(file => new BlogEntry {FullPath = file}).ToList();
return sb.OrderByDescending(t => t.FileDate).Take(5).ToList();
}
}
public class BlogEntry
{
public string FullPath { get; set; }
public DateTime FileDate
{
get { return DateTime.ParseExact(Path.GetFileNameWithoutExtension(FullPath), "yyyyMMdd_HHmm", CultureInfo.InvariantCulture); }
}
public string FileContents
{
get { return File.ReadAllText(FullPath); }
}
}