代码如下:
string fileName="c:\\test.txt";
fs=new FileStream(fileName,FileMode.Open,FileAccess.Write,FileShare.None);
StreamWriter sw=new StreamWriter(fs,System.Text.Encoding.Default);
sw.Write(DateTime.Now.ToString());
sw.Flush();
sw.Close();
如果原来"c:\\test.txt"这个文件有内容,则不会清除原来的,而是在第一行开时写入。
怎样才能每次写入时都将原内容清空呢?

解决方案 »

  1.   

    StreamWriter 构造函数 (String, Boolean, Encoding)  [C#]请参见
    StreamWriter 类 | StreamWriter 成员 | System.IO 命名空间 | StreamWriter 构造函数重载列表 | Encoding | 使用 I/O | 从文件读取文本 | 向文件写入文本 | StreamWriter 成员(Visual J# 语法) | C++ 托管扩展编程 
    要求
    平台: Windows 98, Windows NT 4.0, Windows ME, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 系列, .NET Framework 精简版 - Windows CE .NET, 公共语言基础结构 (CLI) 标准.NET Framework 安全性:  FileIOPermission。关联的枚举:FileIOPermissionAccess.Read 和 FileIOPermissionAccess.Write 
    语言
    C#C++JScriptVisual Basic全部显示
    使用指定编码和默认缓冲区大小,为指定路径上的指定文件初始化 StreamWriter 类的新实例。如果该文件存在,则可以将其改写或向其追加。如果该文件不存在,则此构造函数将创建一个新文件。[Visual Basic]
    Public Sub New( _
       ByVal path As String, _
       ByVal append As Boolean, _
       ByVal encoding As Encoding _
    )[C#]
    public StreamWriter(
       string path,
       bool append,
       Encoding encoding
    );[C++]
    public: StreamWriter(
       String* path,
       bool append,
       Encoding* encoding
    );[JScript]
    public function StreamWriter(
       path : String,
       append : Boolean,
       encoding : Encoding
    );参数
    path 
    要写入的完整文件路径。 
    append 
    确定是否将数据追加到文件。如果该文件存在,并且 append 为 false,则该文件被改写。如果该文件存在,并且 append 为 true,则数据被追加到该文件中。否则,将创建新文件。 
    encoding 
    要使用的字符编码。 
      

  2.   

    StreamWriter 构造函数 (String, Boolean, Encoding)  [C#]请参见
    StreamWriter 类 | StreamWriter 成员 | System.IO 命名空间 | StreamWriter 构造函数重载列表 | Encoding | 使用 I/O | 从文件读取文本 | 向文件写入文本 | StreamWriter 成员(Visual J# 语法) | C++ 托管扩展编程 
    要求
    平台: Windows 98, Windows NT 4.0, Windows ME, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 系列, .NET Framework 精简版 - Windows CE .NET, 公共语言基础结构 (CLI) 标准.NET Framework 安全性:  FileIOPermission。关联的枚举:FileIOPermissionAccess.Read 和 FileIOPermissionAccess.Write 
    语言
    C#C++JScriptVisual Basic全部显示
    使用指定编码和默认缓冲区大小,为指定路径上的指定文件初始化 StreamWriter 类的新实例。如果该文件存在,则可以将其改写或向其追加。如果该文件不存在,则此构造函数将创建一个新文件。[Visual Basic]
    Public Sub New( _
       ByVal path As String, _
       ByVal append As Boolean, _
       ByVal encoding As Encoding _
    )[C#]
    public StreamWriter(
       string path,
       bool append,
       Encoding encoding
    );[C++]
    public: StreamWriter(
       String* path,
       bool append,
       Encoding* encoding
    );[JScript]
    public function StreamWriter(
       path : String,
       append : Boolean,
       encoding : Encoding
    );参数
    path 
    要写入的完整文件路径。 
    append 
    确定是否将数据追加到文件。如果该文件存在,并且 append 为 false,则该文件被改写。如果该文件存在,并且 append 为 true,则数据被追加到该文件中。否则,将创建新文件。 
    encoding 
    要使用的字符编码。 
      

  3.   

    1、建立一个文本文件
    public class FileClass
    {
        public static void Main()
        {
        WriteToFile();
        }
        static void WriteToFile()
        {
        StreamWriter SW;
        SW=File.CreateText("c:\MyTextFile.txt");
        SW.WriteLine("God is greatest of them all");
        SW.WriteLine("This is second line");
        SW.Close();
        Console.WriteLine("File Created SucacessFully");
        }
    }3、追加操作public class FileClass
    {
        public static void Main()
        {
        AppendToFile();
        }
        static void AppendToFile()
        {
        StreamWriter SW;
        SW=File.AppendText("C:\MyTextFile.txt");
        SW.WriteLine("This Line Is Appended");
        SW.Close();
        Console.WriteLine("Text Appended Successfully");
        }
    }
      

  4.   

    StreamWriter sw=new StreamWriter(fs,false,System.Text.Encoding.Default);
      

  5.   

    StreamWriter 构造函数写的很明白了
    [C#]
    public StreamWriter(
       string path,
       bool append
    );参数
    path 
    要写入的完整文件路径。 
    append 
    确定是否将数据追加到文件。如果该文件存在,并且 append 为 false,则该文件被改写。如果该文件存在,并且 append 为 true,则数据被追加到该文件中。否则,将创建新文件。
      

  6.   

    string path="c:\\text.txt";
    File.CreateText(path)
      

  7.   

    明白了
    用FileMode.Create 就可以清除原文件的内容了
    roapzone说的那种append=false也行,只不过那个构造函数版本不能使用FileStream了