JSON ↔ CSV转换器
在JSON(JavaScript对象表示法)和CSV(逗号分隔值)之间即时转换数据。
安全的客户端转换。不会将任何数据发送到服务器。
JSON
CSV
如何使用此转换器
此工具简化了Web应用程序(JSON)和Excel或Google Sheets等电子表格软件(CSV)之间的数据迁移。
JSON转CSV
- 将您的JSON数据粘贴到左侧面板。它应该是一个对象数组。
- 选择您喜欢的分隔符(逗号、分号等)。
- 点击"JSON转CSV"。
- 从右侧面板复制结果以粘贴到Excel中。
CSV转JSON
- 将您的CSV数据粘贴到右侧面板。确保第一行包含标题。
- 调整分隔符设置以匹配您的CSV格式。
- 点击"CSV转JSON"。
- 在您的API或应用程序中使用生成的JSON。
代码示例:JSON转CSV
需要以编程方式进行此转换?以下是常见语言的实现方法。
JavaScript (Node.js/Browser)ES6
const data = [
{ id: 1, name: "Alice" },
{ id: 2, name: "Bob" }
];
// Extract headers
const headers = Object.keys(data[0]);
// Map rows
const csv = [
headers.join(','), // Header row
...data.map(row => headers.map(fieldName =>
JSON.stringify(row[fieldName], (key, value) => value === null ? '' : value)
).join(','))
].join('
');
console.log(csv);Pythonpandas
import pandas as pd
# JSON string or file
json_data = '[{"id": 1, "name": "Alice"}, {"id": 2, "name": "Bob"}]'
# Read JSON
df = pd.read_json(json_data)
# Convert to CSV
csv_data = df.to_csv(index=False)
print(csv_data)PHPNative
$json = '[{"id": 1, "name": "Alice"}, {"id": 2, "name": "Bob"}]';
$array = json_decode($json, true);
$fp = fopen('php://memory', 'w');
// Write headers
fputcsv($fp, array_keys($array[0]));
// Write rows
foreach ($array as $row) {
fputcsv($fp, $row);
}
rewind($fp);
echo stream_get_contents($fp);
fclose($fp);Go (Golang)encoding/csv
package main
import (
"encoding/csv"
"encoding/json"
"os"
"strconv"
)
type User struct {
ID int `json:"id"`
Name string `json:"name"`
}
func main() {
jsonData := `[{"id": 1, "name": "Alice"}, {"id": 2, "name": "Bob"}]`
var users []User
json.Unmarshal([]byte(jsonData), &users)
w := csv.NewWriter(os.Stdout)
w.Write([]string{"id", "name"}) // Headers
for _, user := range users {
w.Write([]string{strconv.Itoa(user.ID), user.Name})
}
w.Flush()
}常见用例
- 数据分析: 将JSON API响应转换为CSV格式,以在Microsoft Excel、Google Sheets或Tableau中打开进行可视化和分析。
- 数据库迁移: 许多SQL数据库(MySQL、PostgreSQL)允许通过CSV文件批量导入。此工具帮助准备NoSQL数据以进行SQL导入。
- 报告生成: 开发者经常需要从内部JSON数据结构为业务利益相关者生成CSV报告。
常见问题
我的数据安全吗?
是的,绝对安全。转换完全在您的浏览器中使用JavaScript进行。不会将任何数据发送到我们的服务器。
嵌套的JSON对象如何处理?
在这个简单的转换器中,嵌套对象被字符串化(转换为文本)以适应单个CSV单元格。
我可以转换大文件吗?
可以,因为它在您的浏览器中运行,限制取决于您计算机的RAM。10-50MB以内的文件通常可以即时处理。