创建txt文件并写如数据

1. 创建文件

复制代码
public static void WriteDataFile(string message, string fileName)
        {
            FileStream fs = null;
            StreamWriter sw = null;
            string headStr = "测量点\t数据时间\t正向有功总\t正向有功尖\t正向有功峰\t正向有功平\t正向有功谷\t正向无功总\t正向无功尖\t正向无功峰\t正向无功平\t正向无功谷\t反向有功总\t反向无功总\t有功功率总\t有功功率A相\t有功功率B相\t有功功率C相\t无功功率总\t无功功率A相\t无功功率B相\t无功功率C相\t功率因数总\t功率因数A相\t功率因数B相\t功率因数C相\t电压A\t电压B\t电压C\t电流A\t电流B\t电流C";
            bool isNew = false;

            string fileNameD = DateTime.Today.ToString("yyyyMMdd");
            string bsFileName = Application.StartupPath + ("/Data/" + fileNameD + "/" + fileName + "Data.txt");
            if (File.Exists(bsFileName) == false)
            {
                fs = new FileStream(bsFileName, FileMode.Create);
                fs.Close();
                isNew = true;
            }
            
            try
            {
                lock (bsFileName)
                { 
                    fs = new FileStream(bsFileName, FileMode.Append, FileAccess.Write);
                    sw = new StreamWriter(fs);
                    if (message == "")
                    {
                        if (isNew == true)
                        {
                            sw.WriteLine(headStr);
                        }
                    }
                    else
                    {
                        sw.WriteLine(message);
                    }
                }
            }
            catch (Exception ee)
            {
                Console.Write(ee.ToString());
                Log log = Log.Instance();
                log.Error("WriteFile" + ee.ToString());
            }
            finally
            {
                if (fs != null)
                {
                    sw.Close();
                }
                if (fs != null)
                {
                    fs.Close();
                }
            }
            
        }
复制代码

2.  写入数据或穿件文件

Common.WriteDemandFile(Protocol.AnalyseDataKeDong(message), dataFileName);

 

posted @   大黄人  阅读(188)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
点击右上角即可分享
微信分享提示