Dart:
การทำงานกับ YAML
วิธีการ:
ใน Dart, การทำงานกับ YAML โดยทั่วไปจะเกี่ยวข้องกับการใช้ไลบรารีภายนอก เนื่องจากภาษานี้ไม่รวมความสามารถในการแยกวิเคราะห์ YAML เข้ามาด้วย ตัวเลือกที่ได้รับความนิยมคือแพคเกจ yaml
ในการเริ่มต้น คุณจะต้องเพิ่มแพคเกจนี้ลงใน pubspec.yaml
ของคุณ:
dependencies:
yaml: ^3.1.0
อย่าลืมรัน pub get
เพื่อดึงแพคเกจ.
การอ่าน YAML
ในการอ่านไฟล์ YAML ขั้นแรกให้นำเข้าแพคเกจ yaml
แล้วใช้ฟังก์ชั่น loadYaml
:
import 'package:yaml/yaml.dart';
import 'dart:io';
void main() {
final file = File('config.yaml').readAsStringSync();
final yamlMap = loadYaml(file);
print(yamlMap['name']); // ผลลัพธ์: John Doe
}
โดยสมมติว่าไฟล์ config.yaml
ของคุณมีหน้าตาดังนี้:
name: John Doe
age: 30
การเขียน YAML
ในขณะที่แพคเกจ yaml
เหมาะสำหรับการวิเคราะห์ข้อมูล แต่ไม่รองรับการเขียน YAML สำหรับสิ่งนั้น คุณอาจจำเป็นต้องแปลงข้อมูลของคุณเป็น YAML ด้วยมือหรือใช้แพคเกจอื่นหากมี หรือ วิธีที่ง่ายกว่าคือจัดการการเปลี่ยนแปลงข้อมูลของคุณและแสดงผลออกมาเป็นสตริงที่ตรงกับไวยากรณ์ YAML:
Map<String, dynamic> data = {
'name': 'Jane Doe',
'age': 29,
};
String toYamlString(Map<String, dynamic> map) {
String yaml = '';
map.forEach((key, value) {
yaml += '$key: $value\n';
});
return yaml;
}
void main() {
print(toYamlString(data)); // ผลลัพธ์: name: Jane Doe
// age: 29
}
นี่เป็นวิธีการพื้นฐานและอาจไม่เหมาะสมกับโครงสร้างข้อมูลที่ซับซ้อนหรือคุณสมบัติพิเศษของ YAML สำหรับความต้องการที่ซับซ้อนเพิ่มเติม คุณอาจต้องมองหาหรือมีส่วนร่วมในแพคเกจ Dart ที่ครอบคลุมมากขึ้น