C# 面试题 目录

C# 中 FileStream、StreamReader 和 StreamWriter 的用法

推荐答案

-- -------------------- ---- -------
----- -------
----- ----------

----- -------
-
    ------ ---- ------
    -
        ------ -------- - --------------

        -- -- ---------- ---------
        ----- ----------- -- - --- -------------------- ---------------- ------------------
        -
            ------ ---- - ------------------------------------------ --------------
            -------------- -- -------------
        -

        -- -- ------------ ------
        ----- ------------- -- - --- -----------------------
        -
            ------ ------- - ---------------
            ------------------------------- ------ - - ---------
        -

        -- -- ------------ -------
        ----- ------------- -- - --- ---------------------- ------
        -
            -------------------- ----------------
        -

        -- ---- ------------ --------
        ----- ------------- -- - --- -----------------------
        -
            ------ ------- - ---------------
            ---------------------- ------------ ------ - - ---------
        -
    -
-

本题详细解读

FileStream 的用法

FileStream 是用于文件读写的底层类,提供了对文件的字节级操作。它允许你以字节为单位读取或写入文件,并且可以控制文件的打开模式、访问权限等。

  • FileMode: 指定文件的打开方式,如 CreateOpenAppend 等。
  • FileAccess: 指定文件的访问权限,如 ReadWriteReadWrite 等。

在示例中,我们使用 FileStream 创建了一个文件,并将字符串 "Hello, FileStream!" 写入文件。

StreamReader 的用法

StreamReader 是一个用于读取文本文件的类,它封装了 FileStream,并提供了更高级的文本读取功能。它可以将字节流转换为字符流,并支持按行读取、读取到末尾等操作。

  • ReadToEnd(): 读取从当前位置到文件末尾的所有字符。
  • ReadLine(): 读取一行字符。

在示例中,我们使用 StreamReader 读取了文件的内容,并将其输出到控制台。

StreamWriter 的用法

StreamWriter 是一个用于写入文本文件的类,它封装了 FileStream,并提供了更高级的文本写入功能。它可以将字符流转换为字节流,并支持按行写入、追加写入等操作。

  • WriteLine(): 写入一行字符,并自动添加换行符。
  • Append: 在构造函数中指定 true 时,表示以追加模式打开文件。

在示例中,我们使用 StreamWriter 向文件中追加了一行文本 "Hello, StreamWriter!",然后再次使用 StreamReader 读取并输出追加后的内容。

通过这三个类的组合使用,可以实现对文件的灵活读写操作。

纠错
反馈