• 个人永久性免费-Excel催化剂功能第107波-Excel单元格区域导出文本文件


    数据转换是一个非常常见的需求,不同系统间的数据交互,需要按特定格式来提供数据。Excel作为数据源,某些环境不及文本文件好用,毕竟需要特定程序来读取,所以顺带做了个小功能,Excel的数据导出到文本文件中。

    原生功能实现的小缺点

    文本文件中,一般需要指定导出数据的行记录分隔符,不同的数据需求,有些不一样,但因为它也是非常自由的,没有像Excel或数据库或xml、json这些结构化的数据。

    单纯依赖于分隔符区分不同列的内容,容易出现误判,如使用英文逗号分隔,而某个单元格内容里就有英文逗号,致使最后分隔出来的数据列错位。

    同样地文本文件中,因为有字符编码的不同,也容易出现乱码,例如Excel打开csv,默认使用ANSI编码来读取,如果文本文件是其他非本系统的编码,就出现乱码现象,包括很常用的UTF-8。

    而大部分程序交互文本文件,都使用UTF-8字符串作兼容。虽然原生的Excel另存为csv格式也可以转UTF-8,但估计许多人分不清其中的区别。

    Excel催化剂克服以上问题点

    针对以上的问题,开发了一个小小功能,满足到导出为文本文件时,选择不同的文件编码,并且可以对行内的字段间的分隔符进行自定义。

    暂定菜单位置,更佳的调用方式是使用搜索,具体操作可查看106波。

    操作步骤

    1. 先选定要导出的单元格区域,只对规范的数据明细数据进行导出,即数据清单列表,列名不能有重名。有筛选条件过滤下,不对隐藏行数据进行导出。

    2. 点击菜单后跳出简单的配置窗体,自行去选择自己所需的的选项

    文件类型分:csv和txt(仅仅后缀名不一样,其实都是文本文件),并区分是否是ANSI或utf8编码格式。

    分隔符有:空格,制表符和英文逗号。

    内容两端字符:防止和原内容分隔符有冲突,可以用英文单引号或双引号将其包裹起来。

    结语

    简单的一个小功能,也是出于自己的使用需要而开发,功能无关大小,用到时就是刚需,希望能够满足到部分人的一些场景需要。

  • 相关阅读:
    Svelte3.x网页聊天实例|svelte.js仿微信PC版聊天sveltewebchat
    [SQLServer]NetCore中将SQLServer数据库备份为Sql脚本
    [Npoi]Npoi导入Excel, 转为Entity
    QT编译并使用Mqtt
    ERROR:You‘re using an RSA key with SHA1, which is no longer allowed
    NFC读写器输出格式配置,16进制10进制或者NFC NDEF格式
    参与 2022 第二季度 Flutter 开发者调查
    报名开启|和你约定在 "Google 应用出海指南针"
    Dart 2.17 正式发布
    一起看 I/O | Flutter 3 更新详解
  • 原文地址:https://www.cnblogs.com/ExcelCuiHuaJi/p/12100586.html
Copyright © 2020-2023  润新知