YAML 到 XML / JSON / CSV 轉換器線上將 YAML 轉換為 XML、JSON 和 CSV。 選擇、載入或輸入 YAML,並將 YAML 轉換為 XML、JSON 和 CSV。 驗證 YAML 並將轉換後的 XML、JSON 和 CSV 資料下載到檔案中。
將 YAML 格式的數據轉換為 XML、JSON 和 CSV 是常見的需求,尤其是在不同的系統或應用中進行數據交互和處理時。以下是如何將 YAML 轉換為這些格式的方法。
1. YAML 轉 XML
將 YAML 轉換為 XML 需要解析 YAML 並生成相應的 XML 結構。這可以通過 Python 或其他編程語言實現。
使用 Python 進行 YAML 轉 XML 的示例:
假設我們有以下的 YAML 文件:
yaml
users:
- id: 1
name: Alice
age: 25
city: New York
- id: 2
name: Bob
age: 30
city: San Francisco
- id: 3
name: Charlie
age: 35
city: Los Angeles
Python 代碼:
python
import yaml
import dicttoxml
# 讀取 YAML 文件
with open('users.yaml', 'r') as file:
yaml_data = yaml.safe_load(file)
# 使用 dicttoxml 轉換字典為 XML
xml_data = dicttoxml.dicttoxml(yaml_data)
# 輸出 XML 格式
print(xml_data)
# 將 XML 保存為文件
with open('users.xml', 'wb') as xml_file:
xml_file.write(xml_data)
2. YAML 轉 JSON
將 YAML 轉換為 JSON 是一個相對簡單的過程,因為兩者都是結構化數據格式。你可以直接將 YAML 解析為字典,然後將字典轉換為 JSON。
使用 Python 進行 YAML 轉 JSON 的示例:
假設我們有以下的 YAML 文件:
yaml
users:
- id: 1
name: Alice
age: 25
city: New York
- id: 2
name: Bob
age: 30
city: San Francisco
- id: 3
name: Charlie
age: 35
city: Los Angeles
Python 代碼:
python
import yaml
import json
# 讀取 YAML 文件
with open('users.yaml', 'r') as file:
yaml_data = yaml.safe_load(file)
# 將字典轉換為 JSON 格式
json_data = json.dumps(yaml_data, indent=4)
# 輸出 JSON 格式
print(json_data)
# 將 JSON 保存為文件
with open('users.json', 'w') as json_file:
json_file.write(json_data)
3. YAML 轉 CSV
將 YAML 轉換為 CSV 格式,通常首先需要將 YAML 數據解析為字典或列表,然後將其轉換為 CSV 格式。
使用 Python 進行 YAML 轉 CSV 的示例:
假設我們有以下的 YAML 文件:
yaml
users:
- id: 1
name: Alice
age: 25
city: New York
- id: 2
name: Bob
age: 30
city: San Francisco
- id: 3
name: Charlie
age: 35
city: Los Angeles
Python 代碼:
python
import yaml
import csv
# 讀取 YAML 文件
with open('users.yaml', 'r') as file:
yaml_data = yaml.safe_load(file)
# 提取用戶數據
users = yaml_data['users']
# 打開 CSV 文件以寫入
with open('users.csv', mode='w', newline='') as file:
writer = csv.writer(file)
# 寫入標題行
writer.writerow(['id', 'name', 'age', 'city'])
# 寫入數據行
for user in users:
writer.writerow([user['id'], user['name'], user['age'], user['city']])
print("YAML 轉換為 CSV 完成")
小結:
YAML 轉 XML:可以使用 dicttoxml 庫將 YAML 轉換為 XML 格式,通過將 YAML 轉換為字典後生成相應的 XML 結構。
YAML 轉 JSON:YAML 格式的數據可以輕鬆地轉換為 JSON 格式,因為兩者都基於鍵值對結構。可以直接解析 YAML,然後使用 json 库將其轉換。
YAML 轉 CSV:將 YAML 轉換為 CSV,需要將 YAML 轉換為列表或字典,然後使用 CSV 庫寫入 CSV 文件。