c# - 如何检查文件内容是否为空?

标签 c#

我正在尝试检查文件中是否没有任何内容。

这是我检查/创建/写入文件的内容:

class LastUsed
    {
        private static string dir = Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles) + @"\Folder\";
        private static string file = dir + @"\Settings.txt";
        private string text;

        public void CheckFileStatus()
        {
            if (!Directory.Exists(dir))
            {
                DirectoryInfo directory = Directory.CreateDirectory(dir);
            }
            if (!File.Exists(file))
            {
                using (FileStream fileStream = File.Create(file))
                {
                }
            }
        }

        private void SetFileText(string writeText)
        {
            using (StreamWriter streamWriter = new StreamWriter(file))
            {
                streamWriter.Write(writeText);
            }
        }

        private string GetFileText()
        {
            string readText;

            using (StreamReader streamReader = File.OpenText(file))
            {
                readText = streamReader.ReadLine();
            }

            return readText;
        }

        public string Text
        {
            set 
            {
                text = value;
                SetFileText(text);
            }
            get 
            {
                return GetFileText(); 
            }
        }

如我们所见,我可以使用属性来读/写文件。所以我尝试检查 Text 属性是否为空值,但它似乎不起作用。

我应该怎么做?

最佳答案

这段代码应该可以做到

if (new FileInfo(fileName).Length ==0){
  // file is empty
} else {
  // there is something in it
}

fileName是你要查找其大小的文件路径

关于c# - 如何检查文件内容是否为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8798231/

相关文章:

c# - 避免角色因胶囊对撞机而跳跃

c# - 将用例封装在软件中

c# - 如何将类型不变的 setter 添加到协变接口(interface)?

c# - 从 C# 错误调用的 PowerShell cmdlet Install-WindowsFeature 未在命令集合中列出

c# - TFS API - 如何获取工作项的父项

c# - Linq 映射 dbml - 捕获存储的过程参数以进行错误报告

c# - 如何在 EF Core 中自动映射 TPH 派生类?

c# - 获取存储在 hubspot 中的所有表单作为 Dictionary<Guid, object>()

c# - 我如何停靠 asp.net : table to my web page so it (the table dock) dynamically adjusts to browser width?

c# - NancyFx 配置请求容器