C # .net импорт CSV в SQL Server без проблем с акцентом - UTF-8 - PullRequest
0 голосов
/ 05 июля 2019

Этот код отлично работает для импорта 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();
        }
    }

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...