批量插入汉字

bulk insert with chinese character

我想批量插入一个包含中文字符的csv数据文件到sql服务器2012,csv数据文件的原始编码是utf8,fmt文件是由bcp工具生成的。问题是,如果我通过记事本将 csv 数据文件的编码从 utf8 转换为 unicode(用记事本打开数据文件,然后选择 'save as' 和 select 'unicode' 格式),我可以批量插入数据到数据库。如果我保留其原始编码,则不会向数据库中插入任何内容。

谁知道有没有什么脚本,比如python或者powershell,可以自动将数据文件从utf-8编码转换成unicode,并且保持汉字不变。 谢谢。

使用 Python 将可能带有 UTF-8 BOM 的 UTF-8 文档转换为 UTF-16-LE:

import io
with io.open("my_input_file.txt", "r", encoding="utf-8-sig") as my_input:
    with io.open("my_output_file.txt", "w", encoding="UTF-16-LE") as my_output:
        my_ouput.write( u"\uFEFF" ) # write a UTF BOM
        my_ouput.write( my_input.read() )