如何使用 c# 访问文件? [复制]

Posted

技术标签:

【中文标题】如何使用 c# 访问文件? [复制]【英文标题】:How I can access a file with c#? [duplicate] 【发布时间】:2019-09-12 17:55:48 【问题描述】:

有一些函数可以在不使用 FileStream 类的情况下从文件中读取所有文本并且更简单?

在 microsoft doc 中发现此代码要从文件中读取,但我认为有些复杂。

private async void Button_Click_1(object sender, RoutedEventArgs e)

    string filename = @"C:\Example\existingfile.txt";
    char[] result;
    StringBuilder builder = new StringBuilder();

    using (StreamReader reader = File.OpenText(filename))
    
        result = new char[reader.BaseStream.Length];
        await reader.ReadAsync(result, 0, (int)reader.BaseStream.Length);
    

    foreach (char c in result)
    
        if (char.IsLetterOrDigit(c) || char.IsWhiteSpace(c))
        
            builder.Append(c);
        
    
    FileOutput.Text = builder.ToString();

【问题讨论】:

您只需要所有文本吗?如果是这样,请参阅File.ReadAllText。也请查看File.ReadAllLines。两者都有异步变体。 是的,我需要使用 File.ReadAllText 重新读取所有文本。 【参考方案1】:

请查看File.ReadAllText Method。

public static void Main()

    string path = @"c:\temp\MyTest.txt";

    // This text is added only once to the file.
    if (!File.Exists(path))
    
        // Create a file to write to.
        string createText = "Hello and Welcome" + Environment.NewLine;
        File.WriteAllText(path, createText, Encoding.UTF8);
    

    // This text is always added, making the file longer over time
    // if it is not deleted.
    string appendText = "This is extra text" + Environment.NewLine;
    File.AppendAllText(path, appendText, Encoding.UTF8);

    // Open the file to read from.
    string readText = File.ReadAllText(path);
    Console.WriteLine(readText);

【讨论】:

以上是关于如何使用 c# 访问文件? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何让 C# 项目使用自己的配置文件? [复制]

如何使用 C# 安装 Windows 字体

如何将三个表数据复制到一个访问c#

如何在 C# 中创建 Microsoft Access 数据库? [复制]

如何在 C# (Winforms) 中复制或读取假脱机文件

如何从 c++ 项目中调用用 c# 创建的 dll 文件? [复制]