把这段代码改写成输出一个txt文件,写入读出的信息
时间: 2024-03-03 13:51:16 浏览: 17
可以使用C#中的File类来实现将数据写入txt文件的操作。具体实现代码如下:
```
using System.IO;
using System.Text;
public static void WriteToFile(string text)
{
string filePath = "output.txt";
using (StreamWriter writer = new StreamWriter(filePath, true, Encoding.UTF8))
{
writer.WriteLine(text);
}
}
public static List<Ty_Station> GetStationInfo()
{
var Db = GetDB();
var stations = Db.Queryable<Ty_Station>().ToList();
StringBuilder sb = new StringBuilder();
foreach (var station in stations)
{
sb.AppendLine($"StationId: {station.Id}, StationName: {station.Name}, StationAddress: {station.Address}");
}
WriteToFile(sb.ToString());
return stations;
}
public static void InsertMonitorData(List<Ty_Monitor> monitors,DateTime dt)
{
var Db=GetDB();
Db.Deleteable<Ty_Monitor>().Where(it=>it.observtime==dt).ExecuteCommand();
Db.Insertable<Ty_Monitor>(monitors).ExecuteCommand();
StringBuilder sb = new StringBuilder();
foreach (var monitor in monitors)
{
sb.AppendLine($"MonitorId: {monitor.Id}, StationId: {monitor.StationId}, ObservTime: {monitor.ObservTime}");
}
WriteToFile(sb.ToString());
}
public static string SendSms(string content,string phones)
{
SMSService.SMSWebServiceSoapClient client = new SMSService.SMSWebServiceSoapClient();
return client.SendMultiSmsByPhones("【天元监控】"+content, phones,"X","X");
}
public static SqlSugarClient GetDB()
{
SqlSugarClient Db = new SqlSugarClient(new ConnectionConfig()
{
ConnectionString = "Server=ip;Database=MonitorDB;User=name;Password=m;MultipleActiveResultSets=True",
DbType = DbType.SqlServer,
IsAutoCloseConnection = true
}, db =>
{
db.Aop.OnLogExecuting = (sql, pars) =>
{
WriteToFile(sql);
};
});
return Db;
}
```
以上代码中,我们新增了一个`WriteToFile`方法,用于将文本数据写入到指定的文件中。我们在`GetStationInfo`和`InsertMonitorData`方法中,将需要输出的信息先存储到`StringBuilder`中,然后再调用`WriteToFile`方法将数据写入到文件中。