api - CKAN:如何指定资源文件的编码?
问题描述
我正在使用 API 将我的 CSV 文件发布到 CKAN。我想让我的数据易于在巴西 Excel 中打开,因此它必须具有:
- 分号“;” 分离的列
- 逗号“,”作为小数分隔符
- 使用编码 cp-1252
我正在使用数据存储和数据推送器。
我的问题是,如果我使用编码 cp1252 上传数据,Data Pusher 会将其按原样发送到期望数据为 UTF-8 的 Data Store。数据预览未正确显示重音符号。下图中Março
是要显示的正确值:
我想让我的用户将数据下载为 cp-1252,这样它就可以在 Excel 中轻松打开,而且 CKAN 也能正确显示它。我必须在上传文件时指定文件的编码。
解决方案
我无法直接指定编码,但查看 Data Pusher 源,我发现它使用了 Messy Tables 库。MT 遵循主机的环境语言环境集,因此我将其配置为,pt_BR.UTF8
并且我的口音工作正常。
现在我可以使用逗号作为小数分隔符并使用编码 Windows-1252 来发布我的数据。下载数据时,数据在 Excel 中正确打开,并且在数据资源管理器中也正确显示。
推荐阅读
- python - 在 Django 中删除帖子
- python - 图像上像素(X,Y)的颜色强度 [OpenCV / Python]
- java - 聊天机器人与 java 代码交互 beetwen jenkins 和 Mattermost
- hashicorp-vault - Vault 的密钥撤销是否会影响被撤销密钥在使用它的服务中的有效性?
- javafx-8 - 如何使用 Google Play 开发者控制台轻松测试计费应用程序?
- php - PHP 简短的 if 语句,带有 continue 关键字并省略 else 部分
- python - 如何根据附加文档的标题自动填写表单域?
- jstl - 如何使用 JSTL 和 EL 获取动态表单字段名称的值
- python - Python中的NoneType-Error与yield
- bash - bash 脚本:获取空闲时间并进行比较