记录一次tsv格式的文件数据导入MongoDB中文乱码的问题

情况:

那是在周五的下午吧,快加班了,领导突然临时加的活儿,给我发了一个文件并说把它导入到测试库MongoDB数据库里面去,表名就是文件名,文件是这样的:
在这里插入图片描述
当时我是这样解决的:

参数:

-h:数据库宿主电脑IP

-u:数据库用户名

-p:数据库密码

-d:数据库名

-c :数据库中的表名

–type:指定导入的数据类型

–file:指定从哪一个文件中导入数据,即文件路径

–headerline:仅适用于导入csv、tsv格式的数据,表示文件中的第一行作为数据头

–upsert:以新增或者更新的方式来导入数据

mongodb导入数据

1、打开命令窗口,进入MongoDB安装目录的“bin”目录下
在这里插入图片描述
2、输入命令:mongoimport -d cxstatistics -c data --type csv --headerline --file d:\dev\airportslist.tsv --headerline --upsert
在这里插入图片描述
3、执行命令即可完成数据的导入。
注:若需要远程导入,只需在命令前加-h。
我是远程连接上传的,所以我的命令是加了-h的,如下:
mongoimport.exe -h 255.255.255.0:27017 -u MongoDB -p 123456 -d B2B -c airportslist --type tsv --headerline --file d:\dev\airportslist.tsv --headerline --upsert

然而最后意外发生了,数据是成功导入了,查看数据的时候,出现了中文乱码的问题,百度了看了好几篇文章试了一下都没解决,最后我静下来仔细想想,决定查看tsv这个文件是什么编码的,把文件拷贝到idea查看的时候,发现全是乱码的,如下图:
在这里插入图片描述
我的idea是UTF-8的字符编码,因为MongoDB默认的字符是UTF-8的,这样就找到了问题,是因为文件字符编码是GB2312,所以导入的数据就出现了中文乱码,最后我用Notepad++把GB2312转成UTF-8就完美解决了,如下:

转成功之后重新导入就可以了

在这里插入图片描述

最后查看MongoDB就是这样的,没有任何乱码:
在这里插入图片描述

参考博客链接:https://blog.csdn.net/hh12211221/article/details/78900709

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值