首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从导入SQLITE的UTF-8 CSV文件中删除BOM

如何从导入SQLITE的UTF-8 CSV文件中删除BOM
EN

Stack Overflow用户
提问于 2019-09-05 01:37:59
回答 1查看 471关注 0票数 0

我正在尝试从csv文件的导入表中删除BOM。有没有人知道在哪里可以将"utf-8-sig“应用到我的代码中,从而成功地做到这一点。

我尝试将filename.encode("utf-8")改为filename.encode("utf-8-sig"),但似乎没有任何改变。我不确定我是否真正理解了编码是如何工作的。

‘类csvrd(对象):

代码语言:javascript
复制
def csvFile(self):

    self.readFile('Tuning_Acronyms.csv')

def readFile(self, filename):
    conn = sqlite3.connect("Database.db")
    cur = conn.cursor()
    cur.execute("CREATE TABLE IF NOT EXISTS Actions (Acronym TEXT, Detail TEXT, Tuple INTEGER PRIMARY KEY)")
    filename.encode('utf-8-sig')
    cur.execute("DELETE FROM Actions")

    with open(filename) as f:
        reader = csv.reader(f)
        for field in reader:
            cur.execute("INSERT INTO Actions VALUES (?,?,NULL);", field)
    cur.execute(("Update Actions SET Tuple = Tuple - 1 WHERE Tuple > 0 "))


    conn.commit()
    conn.close()

“”“

我的结果总是在第一行以‘ai»»’开头

示例

‘ai»»NT’,‘无微调’

我想删除‘ai»’和一个可能的BOMS和编码关系的解释。

任何事都有帮助。:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-05 21:31:08

我自己想出来的。

我将编码应用于Open()语句。

代码语言:javascript
复制
class csvrd(object):
    # To be combined into connect()

    def csvFile(self):

        self.readFile('Acronyms.csv')

    def readFile(self, filename):
        conn = sqlite3.connect("database.db")
        cur = conn.cursor()
        cur.execute("CREATE TABLE IF NOT EXISTS Actions (Acronym TEXT, Detail TEXT, Tuple INTEGER PRIMARY KEY)")
        print(filename)
        cur.execute("DELETE FROM Actions")
        with open(filename, encoding = 'utf-8-sig') as f:
            reader = csv.reader(f)
            for field in reader:
                cur.execute("INSERT INTO Actions VALUES (?,?,NULL);", field)
        cur.execute(("Update Actions SET Tuple = Tuple - 1 WHERE Tuple > 0 "))


        conn.commit()
        conn.close()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57793351

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档