Этот код отлично работает для импорта CSV в мою таблицу SQL Server. Но все бразильские акценты не работают.
Например, в моем CSV есть одна строка с этой строкой: «Automóvel».
Но когда я загружаю файл для импорта в SQL Server, эта строка выглядит так: «Autom? Vel».
изменить 1: это весь код: (
protected void btn_upload_Click(object sender, EventArgs e)
{
string csvPath = Server.MapPath("~/upload/") + Path.GetFileName(FileUpload1.PostedFile.FileName);
FileUpload1.SaveAs(csvPath);
DataTable dt = new DataTable();
dt.Columns.AddRange(new DataColumn[29] {
new DataColumn("Loja", typeof(string)),
new DataColumn("Ref", typeof(string)),
new DataColumn("TipoVeic", typeof(string)),
new DataColumn("Placa", typeof(string)),
new DataColumn("Marca", typeof(string)),
new DataColumn("Modelo", typeof(string)),
new DataColumn("Versao", typeof(string)),
new DataColumn("AnoFabr", typeof(string)),
new DataColumn("AnoModelo", typeof(string)),
new DataColumn("Motor", typeof(string)),
new DataColumn("Cambio", typeof(string)),
new DataColumn("Combustivel", typeof(string)),
new DataColumn("Cor", typeof(string)),
new DataColumn("ZeroKm", typeof(string)),
new DataColumn("Importado", typeof(string)),
new DataColumn("Blindado", typeof(string)),
new DataColumn("Deficiente",typeof(string)),
new DataColumn("RevCons", typeof(string)),
new DataColumn("RevGar", typeof(string)),
new DataColumn("GarFabr", typeof(string)),
new DataColumn("IpvaPago", typeof(string)),
new DataColumn("Licenciado", typeof(string)),
new DataColumn("UnicoDono", typeof(string)),
new DataColumn("Quilometragem", typeof(string)),
new DataColumn("Portas", typeof(string)),
new DataColumn("EquipList", typeof(string)),
new DataColumn("Observacoes", typeof(string)),
new DataColumn("Preco", typeof(string)),
new DataColumn("Fotos", typeof(string))
});
string csvData = File.ReadAllText(csvPath, Encoding.UTF8);
foreach (string row in csvData.Split('\n'))
{
if (!string.IsNullOrEmpty(row))
{
dt.Rows.Add();
int i = 0;
foreach (string cell in row.Split(';'))
{
dt.Rows[dt.Rows.Count - 1][i] = string.Format("{0}", cell);
i++;
}
}
}
string consString = ConfigurationManager.ConnectionStrings["conexao"].ConnectionString;
using (SqlConnection con = new SqlConnection(consString))
{
using (SqlBulkCopy sqlBulkCopy = new SqlBulkCopy(con))
{
//Set the database table name.
sqlBulkCopy.DestinationTableName = "dbo.tb_produtoCSV";
con.Open();
sqlBulkCopy.WriteToServer(dt);
con.Close();
}
}
}