c# 替换原有文件内容


//实现替换原有文件内容
//Seek(0, SeekOrigin.Begin)将指针指向文件的开始,才能从文件的开头,但是此时如果新写入的流长度小于原有文件长度,则会保留原文件多余的信息
using (FileStream fileStream = new FileStream(file, FileMode.Open, FileAccess.Write, FileShare.Write))
{
    fileStream.Seek(0, SeekOrigin.Begin);
    using (StreamWriter streamWriter = new StreamWriter(fileStream))
    {
        streamWriter.Write("this is clear file");
        fileStream.Flush();
        streamWriter.Close();
    }
    fileStream.Close();
}

//调用Stream的SetLength这个方法,将长度设为0,可以实现清空原有文件
using (FileStream fileStream = new FileStream(file, FileMode.Open, FileAccess.Write, FileShare.Write))
{
    fileStream.SetLength(0);
    using (StreamWriter streamWriter = new StreamWriter(fileStream))
    {
        streamWriter.Write("this is clear file");
        fileStream.Flush();
        streamWriter.Close();
    }
    fileStream.Close();
}

//如果文件已存在则清空,从Truncate打开的文件中读取将引发异常
using (FileStream fileStream = new FileStream(file, FileMode.Truncate, FileAccess.Write, FileShare.Write))
{
    using (StreamWriter streamWriter = new StreamWriter(fileStream))
    {
        streamWriter.Write("this is");
        fileStream.Flush();
        streamWriter.Close();
    }
    fileStream.Close();
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM