在C#中,可以使用System.IO命名空间中的StreamReader类来读取文本文件,并将其内容存入数据表中。以下是一个示例代码:
using System;
using System.IO;
using System.Data;
using System.Data.SqlClient;
class Program
{
static void Main()
{
// 创建数据表
DataTable dataTable = new DataTable("TextData");
dataTable.Columns.Add("Line", typeof(string));
// 读取文本文件
using (StreamReader reader = new StreamReader("textfile.txt"))
{
string line;
while ((line = reader.ReadLine()) != null)
{
// 将每行文本添加到数据表中
dataTable.Rows.Add(line);
}
}
// 将数据表中的内容存入数据库
string connectionString = "YourConnectionString";
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
// 创建数据库表
SqlCommand createTableCommand = new SqlCommand("CREATE TABLE TextData (Line NVARCHAR(MAX))", connection);
createTableCommand.ExecuteNonQuery();
// 使用SqlBulkCopy将数据表中的内容导入数据库表
using (SqlBulkCopy bulkCopy = new SqlBulkCopy(connection))
{
bulkCopy.DestinationTableName = "TextData";
bulkCopy.WriteToServer(dataTable);
}
}
Console.WriteLine("文本文件已成功读入数据表并存入数据库。");
}
}
上述代码首先创建了一个名为"TextData"的数据表,并添加了一个名为"Line"的列,用于存储文本文件的每一行。
然后,使用StreamReader类打开文本文件,并逐行读取文件内容。每读取一行,就将其添加到数据表中。
接下来,使用SqlConnection类和SqlBulkCopy类将数据表中的内容存入数据库。需要替换"YourConnectionString"为实际的数据库连接字符串。
最后,输出一条成功的消息。
请注意,上述代码仅为示例,实际应用中需要根据具体情况进行适当的修改和优化。
推荐的腾讯云相关产品:腾讯云数据库SQL Server版(https://cloud.tencent.com/product/sqlserver)
领取专属 10元无门槛券
手把手带您无忧上云