C#:
การทำงานร่วมกับ TOML

วิธีการ:

ก่อนอื่น, ติดตั้งตัวแยกวิเคราะห์ TOML เช่น Tomlyn ใช้ package manager ของคุณ:

dotnet add package Tomlyn

ต่อไป, วิเคราะห์ไฟล์ TOML:

using Tomlyn;
using Tomlyn.Model;
using System;

var tomlContent = @"
[owner]
name = 'Tom Preston-Werner'
dob = 1979-05-27T07:32:00Z";

var tomlTable = Toml.Parse(tomlContent).ToModel();

Console.WriteLine($"เจ้าของ: {tomlTable["owner"]["name"]}");
// ผลลัพธ์:
// เจ้าของ: Tom Preston-Werner

ตอนนี้, สร้างและเขียน TOML:

using Tomlyn;
using Tomlyn.Syntax;
using System;
using System.IO;

var doc = new DocumentSyntax
{
    Tables =
    {
        new TableSyntax("owner")
        {
            Items =
            {
                { "name", "Tom Preston-Werner" },
                { "dob", "1979-05-27T07:32:00Z" }
            }
        }
    }
};

var tomlString = doc.ToString();
File.WriteAllText("config.toml", tomlString);
Console.WriteLine("TOML ถูกเขียนไปยัง config.toml");
// ผลลัพธ์:
// TOML ถูกเขียนไปยัง config.toml

ศึกษาเพิ่มเติม:

TOML ถูกสร้างโดย Tom Preston-Werner ผู้ร่วมก่อตั้ง GitHub ในช่วงปี 2013 เป็นการตอบสนองต่อข้อจำกัดของรูปแบบที่มีอยู่ เช่น YAML และ JSON ในการตั้งค่าการกำหนดค่า เป็นการออกแบบโดยเฉพาะสำหรับการกำหนดค่า โดยเน้นความเรียบง่ายและไม่คลุมเครือ

รูปแบบการกำหนดค่าอื่น ๆ ได้แก่ YAML, JSON, และ XML แต่ TOML โดดเด่นด้วยความเป็นมิตรกับมนุษย์ โดยเฉพาะอย่างยิ่งสำหรับไฟล์การกำหนดค่าที่การแก้ไขด้วยมือเป็นเรื่องปกติ JSON ในขณะที่เป็นที่นิยมอย่างกว้างขวาง แต่มีความสามารถในการอ่านน้อยกว่าสำหรับการกำหนดค่าที่ซับซ้อน และ XML เป็นอักขระชุดคำสั่งยาวมาก YAML ถึงแม้ว่าจะอ่านง่ายเช่นกัน แต่สามารถกลายเป็นปัญหาได้เมื่อใช้งาน whitespace อย่างหนักและมีความเสี่ยงด้านความปลอดภัยกับเนื้อหาบางประเภท

ในเชิงการทำงาน, TOML เน้นที่การแมปไปยัง hash table โดยราบรื่น ทำให้การสกัดข้อมูลเป็นไปอย่างที่คาดหวัง ด้วยการปล่อยเวอร์ชัน 1.0.0, TOML ได้รับการขึ้นรูปข้อกำหนดของตนเอง ช่วยปรับปรุงความเสถียรและการสนับสนุนเครื่องมือ

ดูเพิ่มเติม: