SKILL.md
2.7 KB查看排版效果| 1 | --- |
| 2 | name: csv-to-markdown-20261104 |
| 3 | description: 本地离线 CSV 转 Markdown 表格工具,正确解析双引号包裹字段与字段内分隔符/换行,支持自定义分隔符、列对齐方式、无表头模式和结果写文件,全程不联网。 |
| 4 | --- |
| 5 | |
| 6 | # CSV 转 Markdown 表格工具 |
| 7 | |
| 8 | 本技能是一个**纯本地、离线**的 CSV 转换工具: |
| 9 | |
| 10 | - **能做什么**:把 CSV/TSV 文本转换成标准 Markdown 表格;正确处理双引号包裹的字段、字段内的分隔符与换行、`""` 转义引号;支持自定义分隔符、列对齐、无表头文件; |
| 11 | - **带不带脚本**:带一个 PowerShell 脚本 `scripts/Convert-CsvToMarkdown.ps1`,不依赖任何第三方模块; |
| 12 | - **联不联网**:**不联网**,不发起任何网络请求; |
| 13 | - **写不写文件**:默认把 Markdown 输出到屏幕;只有显式传入 `-OutFile` 时才写入文件。 |
| 14 | |
| 15 | ## 适用场景 |
| 16 | |
| 17 | - 把导出的 CSV 数据快速贴进 Markdown 文档、Wiki、Issue; |
| 18 | - 处理含引号、逗号、换行的复杂 CSV(如备注列、地址列); |
| 19 | - 制表符分隔(TSV)或分号分隔等非标准分隔文件的转换。 |
| 20 | |
| 21 | ## 使用方法 |
| 22 | |
| 23 | ```powershell |
| 24 | # 基本转换,输出到屏幕 |
| 25 | .\scripts\Convert-CsvToMarkdown.ps1 -InputFile .\data.csv |
| 26 | |
| 27 | # 写入 Markdown 文件 |
| 28 | .\scripts\Convert-CsvToMarkdown.ps1 -InputFile .\data.csv -OutFile .\table.md |
| 29 | |
| 30 | # TSV(制表符分隔),表头居中对齐 |
| 31 | .\scripts\Convert-CsvToMarkdown.ps1 -InputFile .\data.tsv -Delimiter "`t" -Alignment center |
| 32 | |
| 33 | # 分号分隔,无表头(自动生成 Column1、Column2……) |
| 34 | .\scripts\Convert-CsvToMarkdown.ps1 -InputFile .\data.csv -Delimiter ';' -NoHeader |
| 35 | ``` |
| 36 | |
| 37 | ## 参数说明 |
| 38 | |
| 39 | | 参数 | 说明 | 默认值 | |
| 40 | |---|---|---| |
| 41 | | `-InputFile` | 输入 CSV 文件路径(必填) | 空 | |
| 42 | | `-Delimiter` | 字段分隔符,可传逗号、制表符、分号等单字符 | `,` | |
| 43 | | `-Alignment` | 列对齐方式:`left` / `center` / `right` / `none` | `left` | |
| 44 | | `-NoHeader` | 第一行视为数据,自动生成 `Column1`、`Column2` 表头 | 关闭 | |
| 45 | | `-OutFile` | 结果写入指定文件(UTF-8 无 BOM);不传则只输出到屏幕 | 空 | |
| 46 | | `-KeepWhitespace` | 保留字段首尾空白,默认会去除 | 关闭 | |
| 47 | |
| 48 | ## 处理规则 |
| 49 | |
| 50 | - 双引号内的分隔符与换行属于字段内容;连续两个引号 `""` 解析为一个字面引号; |
| 51 | - 字段中的管道符 `|` 自动转义为 `\|`,字段内换行替换为空格,避免破坏 Markdown 表格; |
| 52 | - 各行字段数不一致时,以最大列数为准用空单元格补齐,并给出警告; |
| 53 | - 输出的对齐分隔行:左对齐 `:---`、居中 `:---:`、右对齐 `---:`、无对齐 `---`。 |
| 54 | |
| 55 | ## 注意事项 |
| 56 | |
| 57 | 输入文件建议为 UTF-8 编码;含中文的非 UTF-8 文件请先转换编码,避免乱码。 |
文件内容是平台检查时读出的文本,只供查看。平台不会运行包里的任何脚本或程序。

