ToolDeck

แปลง CSV เป็น Markdown

แปลง CSV เป็นตาราง Markdown

ลองตัวอย่าง

CSV อินพุต

Markdown เอาต์พุต

ประมวลผลในเครื่อง · ปลอดภัยในการวางข้อมูลลับ
ตาราง Markdown จะปรากฏที่นี่…

การแปลง CSV เป็น Markdown คืออะไร?

การแปลง CSV เป็นตาราง Markdown เป็นงานทั่วไปของนักพัฒนา CSV (Comma-Separated Values) จัดเก็บข้อมูลตารางในรูปแบบข้อความธรรมดา โดยแต่ละแถวอยู่ในบรรทัดของตัวเอง และฟิลด์แต่ละช่องคั่นด้วยตัวคั่น เช่น เครื่องหมายจุลภาคหรือแท็บ CSV เป็นรูปแบบส่งออกหลักของสเปรดชีต SQL client และเครื่องมือวิเคราะห์ข้อมูล ไฟล์ CSV มีขนาดกะทัดรัดและสร้างง่าย แต่ไม่มีวิธีในตัวที่จะควบคุมรูปลักษณ์ของข้อมูลเมื่อแสดงผล ไฟล์ CSV ที่เปิดด้วยโปรแกรมแก้ไขข้อความจะเห็นเป็นสตริงคั่นด้วยจุลภาคซึ่งเครื่องอ่านได้แต่มนุษย์อ่านยาก

ตาราง Markdown แก้ปัญหาความอ่านยากนี้ได้ ตารางเหล่านี้นิยามโดยข้อกำหนด GitHub Flavored Markdown (GFM) และรองรับโดย GitHub, GitLab, Bitbucket, Notion, Obsidian และ static site generator อย่าง Hugo และ Jekyll — ทุกที่ที่ประมวลผล Markdown ตารางจะแสดงผลเป็นตาราง HTML ที่สะอาด รูปแบบนี้ใช้อักขระ pipe คั่นคอลัมน์และแถวคั่นด้วยขีดกลางที่จำเป็นระหว่างแถวหัวและแถวเนื้อหา

การแปลง CSV เป็นตาราง Markdown หมายถึงการห่อแต่ละแถวด้วยรูปแบบ pipe-delimited และแทรกแถวคั่นหลังหัวตาราง แถวแรกของ CSV จะกลายเป็นหัวตาราง และแถวถัดมาแต่ละแถวจะกลายเป็นแถวเนื้อหา คุณต้องการสิ่งนี้เมื่อวางข้อมูลที่มีโครงสร้างลงใน README คำอธิบาย pull request หน้า wiki หรือระบบเอกสาร Markdown ใดๆ

ทำไมต้องใช้เครื่องมือนี้?

ตัวแปลงนี้แยกวิเคราะห์ CSV ในเบราว์เซอร์ของคุณ สร้างเอาต์พุตตาราง Markdown ได้ทันที และไม่ส่งข้อมูลของคุณไปยังเซิร์ฟเวอร์ใดๆ

สร้างตารางได้ทันที
วาง CSV แล้วรับตาราง Markdown ที่จัดรูปแบบถูกต้องทันที ไม่ต้องรอการอัปโหลดหรือประมวลผลบนเซิร์ฟเวอร์ เอาต์พุตอัปเดตขณะที่คุณพิมพ์
🔒
ประมวลผลโดยให้ความเป็นส่วนตัวเป็นหลัก
ข้อมูลของคุณอยู่ในแท็บเบราว์เซอร์เท่านั้น ไม่มีการส่งข้อมูลผ่านเครือข่าย ปลอดภัยสำหรับชุดข้อมูลภายใน ข้อมูลประจำตัว หรือข้อมูลส่วนตัวที่ไม่ควรออกจากเครื่องของคุณ
📋
เอาต์พุตพร้อมคัดลอก
คัดลอกตาราง Markdown ไปยังคลิปบอร์ดด้วยคลิกเดียว วางลงใน README ของ GitHub, issue, คำอธิบาย PR, หน้า Confluence หรือโปรแกรมแก้ไข Markdown ใดๆ ได้เลย
🔀
ตรวจจับตัวคั่นอัตโนมัติ
เครื่องมือรู้จักตัวคั่นประเภทจุลภาค แท็บ เซมิโคลอน และ pipe โดยอัตโนมัติ CSV ของคุณไม่จำเป็นต้องอยู่ในรูปแบบเดียวเพื่อให้ได้ผลลัพธ์ที่ถูกต้อง

กรณีการใช้งาน CSV เป็น Markdown

เอกสาร README
แปลงไฟล์ CSV ที่มีตัวเลือกการกำหนดค่า API endpoint หรือตัวแปรสภาพแวดล้อมเป็นตาราง Markdown สำหรับ README ของโปรเจกต์ ช่วยให้เอกสารสอดคล้องกับข้อมูลที่ส่งออก
คำอธิบาย Pull Request
วางผลการทดสอบ การเปรียบเทียบ benchmark หรือสรุปการย้ายข้อมูลเป็นตาราง Markdown ในคำอธิบาย PR บน GitHub หรือ GitLab เพื่อให้ผู้ตรวจสอบดูข้อมูลได้โดยไม่ต้องเปิดไฟล์แยก
DevOps Runbooks
แปลงรายการ CSV ของเซิร์ฟเวอร์ พอร์ต หรือ service endpoint เป็นตาราง Markdown สำหรับ wiki ของทีมและ runbook รับมือกับเหตุการณ์ที่จัดเก็บใน Git
รายงานการทดสอบ QA
แปลงผลการทดสอบที่ส่งออกจาก CI pipeline เป็นตาราง Markdown ที่แสดงผลได้โดยตรงใน Jira, Confluence หรือ Notion สำหรับผู้มีส่วนได้ส่วนเสียตรวจสอบ
เอกสาร Data Engineering
แปลงนิยาม schema หรือข้อมูลเมตาของคอลัมน์ที่ส่งออกเป็น CSV จาก data catalog เป็นตาราง Markdown สำหรับใส่ในเอกสาร data pipeline
งานวิชาการและนักศึกษา
แปลงชุดข้อมูลจาก Kaggle หรือพอร์ทัลข้อมูลเปิดของรัฐบาลเป็นตาราง Markdown สำหรับบันทึกการวิจัย รายงานปฏิบัติการ หรือเอกสาร Jupyter notebook

อ้างอิงรูปแบบตาราง Markdown

ตาราง Markdown เป็นไปตามข้อกำหนด GitHub Flavored Markdown (GFM) ทุกตารางต้องมีแถวหัว แถวคั่น และแถวเนื้อหาอย่างน้อยหนึ่งแถว แถวคั่นควบคุมการจัดตำแหน่งคอลัมน์

องค์ประกอบรูปแบบคำอธิบาย
Column separator|Separates each cell within a row
Header row| Name | Age |First row of the table, defines column names
Separator row| --- | --- |Required second row; separates header from body
Left align| :--- |Default alignment — colon on the left side
Center align| :---: |Colons on both sides of the dashes
Right align| ---: |Colon on the right side only
Escaped pipe\|Use backslash to include a literal pipe in cell text

CSV เทียบกับตาราง Markdown

ทั้งสองรูปแบบแสดงข้อมูลตารางเป็นข้อความธรรมดา CSV ใช้สำหรับเครื่องและ data pipeline ส่วนตาราง Markdown ใช้สำหรับมนุษย์ที่อ่านเอกสาร

CSV
เน้นการใช้งานกับเครื่อง ฟิลด์คั่นด้วยตัวคั่น (จุลภาค แท็บ เซมิโคลอน) ไม่มีการควบคุมการจัดตำแหน่ง ไม่มีการแสดงผล — สิ่งที่เห็นในโปรแกรมแก้ไขข้อความคือค่าดิบ รองรับโดยสเปรดชีต เครื่องมือส่งออกฐานข้อมูล และทุกภาษาโปรแกรม เหมาะสำหรับการแลกเปลี่ยนและจัดเก็บข้อมูล
Markdown Table
เน้นการใช้งานกับมนุษย์ คอลัมน์คั่นด้วยอักขระ pipe พร้อมแถวคั่นขีดกลางที่จำเป็น รองรับการจัดตำแหน่งซ้าย กลาง และขวาต่อคอลัมน์ แสดงผลเป็นตาราง HTML บน GitHub, GitLab, Notion และ static site generator เหมาะสำหรับเอกสาร README และการแสดงข้อมูลแบบอินไลน์

ตัวอย่างโค้ด

ตัวอย่างต่อไปนี้แสดงวิธีแปลง CSV เป็นตาราง Markdown ด้วยโปรแกรมในภาษาต่างๆ แต่ละตัวอย่างสร้างตาราง GFM ที่ถูกต้อง

JavaScript (Node.js)
const csv = `name,age,city
Alice,30,Berlin
Bob,25,Tokyo`

const [headerLine, ...rows] = csv.trim().split('\n')
const headers = headerLine.split(',')

const separator = '| ' + headers.map(() => '---').join(' | ') + ' |'
const headerRow = '| ' + headers.join(' | ') + ' |'
const bodyRows = rows.map(row =>
  '| ' + row.split(',').join(' | ') + ' |'
)

const markdown = [headerRow, separator, ...bodyRows].join('\n')
// → | name | age | city |
// → | --- | --- | --- |
// → | Alice | 30 | Berlin |
// → | Bob | 25 | Tokyo |
Python
import csv
import io

csv_string = """name,age,city
Alice,30,Berlin
Bob,25,Tokyo"""

reader = csv.reader(io.StringIO(csv_string))
rows = list(reader)
headers = rows[0]

lines = []
lines.append('| ' + ' | '.join(headers) + ' |')
lines.append('| ' + ' | '.join('---' for _ in headers) + ' |')
for row in rows[1:]:
    lines.append('| ' + ' | '.join(row) + ' |')

print('\n'.join(lines))
# → | name | age | city |
# → | --- | --- | --- |
# → | Alice | 30 | Berlin |
# → | Bob | 25 | Tokyo |

# With pandas (one-liner)
import pandas as pd
df = pd.read_csv(io.StringIO(csv_string))
print(df.to_markdown(index=False))
Go
package main

import (
	"encoding/csv"
	"fmt"
	"strings"
)

func main() {
	input := "name,age,city\nAlice,30,Berlin\nBob,25,Tokyo"
	r := csv.NewReader(strings.NewReader(input))
	records, _ := r.ReadAll()

	headers := records[0]
	var lines []string

	lines = append(lines, "| "+strings.Join(headers, " | ")+" |")
	sep := make([]string, len(headers))
	for i := range sep {
		sep[i] = "---"
	}
	lines = append(lines, "| "+strings.Join(sep, " | ")+" |")

	for _, row := range records[1:] {
		lines = append(lines, "| "+strings.Join(row, " | ")+" |")
	}

	fmt.Println(strings.Join(lines, "\n"))
	// → | name | age | city |
	// → | --- | --- | --- |
	// → | Alice | 30 | Berlin |
	// → | Bob | 25 | Tokyo |
}
CLI (Miller + csvtomd)
# Using Miller (mlr) — convert CSV to Markdown table
mlr --icsv --omarkdown cat data.csv
# → | name | age | city |
# → | --- | --- | --- |
# → | Alice | 30 | Berlin |

# Using csvtomd (pip install csvtomd)
csvtomd data.csv

# Using pandas in a one-liner
python3 -c "
import pandas as pd, sys
print(pd.read_csv(sys.argv[1]).to_markdown(index=False))
" data.csv

คำถามที่พบบ่อย

เครื่องมือนี้สร้างตาราง Markdown รูปแบบใด?
เครื่องมือสร้างตาราง GitHub Flavored Markdown (GFM) รูปแบบนี้ใช้อักขระ pipe เป็นตัวคั่นคอลัมน์และแถวขีดกลาง (---) ระหว่างหัวและเนื้อหา ตาราง GFM รองรับโดย GitHub, GitLab, Bitbucket, Notion, Obsidian, Hugo, Jekyll และ Markdown renderer ส่วนใหญ่
ฉันสามารถควบคุมการจัดตำแหน่งคอลัมน์ในเอาต์พุต Markdown ได้ไหม?
รูปแบบตาราง Markdown มาตรฐานรองรับการจัดตำแหน่งซ้าย กลาง และขวา โดยเพิ่มเครื่องหมายโคลอนในแถวคั่น (:--- สำหรับซ้าย, :---: สำหรับกลาง, ---: สำหรับขวา) เครื่องมือนี้สร้างคอลัมน์ชิดซ้ายเป็นค่าเริ่มต้น คุณสามารถแก้ไขแถวคั่นในเอาต์พุตเพื่อเปลี่ยนการจัดตำแหน่งหลังการแปลงได้
เครื่องมือจัดการฟิลด์ CSV ที่มีเครื่องหมายจุลภาคอยู่ภายในอย่างไร?
หากฟิลด์ CSV มีอักขระตัวคั่น ฟิลด์นั้นควรถูกห่อด้วยเครื่องหมายคำพูดคู่ตามข้อกำหนด RFC 4180 เครื่องมือจะลบเครื่องหมายคำพูดด้านนอกออกระหว่างการแยกวิเคราะห์และแสดงค่าธรรมดาภายในเซลล์ Markdown รูปแบบ Markdown แบบ pipe-delimited ไม่จำเป็นต้องใส่เครื่องหมายคำพูดสำหรับจุลภาค
มีขีดจำกัดจำนวนแถวหรือคอลัมน์สำหรับการแปลงไหม?
เครื่องมือไม่มีขีดจำกัดแน่นอน การแปลงทำงานในเบราว์เซอร์ของคุณ ดังนั้นประสิทธิภาพขึ้นอยู่กับอุปกรณ์ ตารางที่มีหลายพันแถวแปลงได้ในเวลาไม่ถึงวินาทีบนฮาร์ดแวร์ทันสมัย สำหรับไฟล์ขนาดใหญ่มาก (100,000+ แถว) เครื่องมือบรรทัดคำสั่งอย่าง Miller เหมาะสมกว่า
จะเกิดอะไรขึ้นถ้า CSV ของฉันไม่มีแถวหัว?
ตาราง Markdown ต้องมีแถวหัว หาก CSV ของคุณไม่มีหัว เครื่องมือจะใช้แถวข้อมูลแรกเป็นหัวตาราง คุณสามารถเพิ่มแถวหัวใน CSV ก่อนวาง หรือแก้ไขแถวแรกของเอาต์พุต Markdown หลังการแปลงได้
ฉันสามารถแปลงข้อมูลแบบ tab-separated (TSV) เป็น Markdown ได้ไหม?
ได้ เครื่องมือตรวจจับอักขระแท็บเป็นตัวคั่นโดยอัตโนมัติ วางข้อมูล TSV ได้เลยและตัวแปลงจะแยกวิเคราะห์เหมือนกับการรับข้อมูลแบบ comma-separated คุณยังสามารถเลือกตัวคั่นด้วยตนเองหากการตรวจจับอัตโนมัติไม่ตรงกับข้อมูลของคุณ
ตาราง Markdown จัดการอักขระพิเศษอย่าง pipe อย่างไร?
อักขระ pipe ตรงๆ ภายในเซลล์จะทำให้โครงสร้างตารางเสีย ใน Markdown คุณ escape ด้วย backslash: \|. เมื่อแปลงจาก CSV เครื่องมือจะ escape อักขระ pipe ที่พบในค่าเซลล์โดยอัตโนมัติเพื่อให้ตารางเอาต์พุตแสดงผลได้ถูกต้อง