如何在文本文件中添加/附加现有数据的文本开头.基本上我需要在文本文件中提供此数据之前的标题.此标头是动态数据.请注意,此数据来自外部源或SQL包或来自某个地方.因此,在文本文件中获取数据之后,我想在文本文件的现有条目/数据中提供以逗号分隔的标题文本.
我在文本文件中对数据进行采样,如下所示:
123,"SAV","CBS123",2010-10-10 00:00:00
456,"CUR","CBS456",2012-02-01 00:00:00
Run Code Online (Sandbox Code Playgroud)
要添加的标题文本:
HDR<TableName><DateTime>
Run Code Online (Sandbox Code Playgroud)
输出我需要如下:TableName:Account DateTime:2012-05-09 12:52:00
HDRAccount2012-05-09 12:52:00
123,"SAV","CBS123",2010-10-10 00:00:00
456,"CUR","CBS456",2012-02-01 00:00:00
Run Code Online (Sandbox Code Playgroud)
请帮助我如何在VB6.0,C#.NET两种语言中获得相同的功能
请注意,您无法在技术上"插入"文件并让所有内容"移位".你能做的最好就是读取文件并用新行重写.这是有效实现这一目标的一种方法:
static void InsertHeader(string filename, string header)
{
var tempfile = Path.GetTempFileName();
using (var writer = new StreamWriter(tempfile))
using (var reader = new StreamReader(filename))
{
writer.WriteLine(header);
while (!reader.EndOfStream)
writer.WriteLine(reader.ReadLine());
}
File.Copy(tempfile, filename, true);
File.Delete(tempfile);
}
Run Code Online (Sandbox Code Playgroud)
现在,如果您想要接受表名和日期时间的东西,只需将其添加为第二个函数:
static void InsertTableHeader(string filename, string tableName, DateTime dateTime)
{
InsertHeader(filename,
String.Format("HDR{0}{1:yyyy-MM-dd HH:MM:ss}",
tableName,
dateTime));
}
Run Code Online (Sandbox Code Playgroud)
所以只InsertHeader(filename, "Account", DateTime.Now)需要打电话或类似.
| 归档时间: |
|
| 查看次数: |
7176 次 |
| 最近记录: |