کار با فایل در جولیا (مفهومی)

خواندن و نوشتن فایل با open — در مرورگر محدود است اما مفهوم را یاد بگیرید

کار با فایل

در جولیا با تابع open فایل می‌خوانیم و می‌نویسیم:

نکته مهم: کار با فایل در ویرایشگر آنلاین (مرورگر) کار نمی‌کند — این مبحث برای اجرای محلی است. اما مفهوم را یاد بگیرید چون در پروژه‌های واقعی ضروری است!

نوشتن در فایل

# روش ۱: با do (پیشنهادی — فایل خودکار بسته می‌شود)
open("data.txt", "w") do f
    println(f, "خط اول")
    println(f, "خط دوم")
    write(f, "متن بدون خط جدید")
end

# روش ۲: دستی
f = open("data.txt", "w")
println(f, "سلام")
close(f)   -- حتماً ببندید!

خواندن فایل

# کل فایل یک‌جا
content = read("data.txt", String)
println(content)

# خط به خط
open("data.txt") do f
    for line in eachline(f)
        println("خط: $line")
    end
end

# همه خطوط به آرایه
lines = readlines("data.txt")
println(length(lines), " خط")

حالت‌های باز کردن

حالتمعنی
"r"خواندن (پیش‌فرض)
"w"نوشتن (پاک می‌کند!)
"a"افزودن به انتها
"r+"خواندن + نوشتن

افزودن به فایل

open("log.txt", "a") do f
    println(f, "ورود جدید: $(Dates.now())")
end

مثال: ذخیره و بارگذاری داده

# ذخیره CSV
function saveScores(scores, filename)
    open(filename, "w") do f
        for (name, score) in scores
            println(f, "$name,$score")
        end
    end
end

# بارگذاری CSV
function loadScores(filename)
    scores = Dict{String,Int}()
    for line in eachline(filename)
        parts = split(line, ",")
        scores[parts[1]] = parse(Int, parts[2])
    end
    return scores
end

data = Dict("علی" => 18, "مریم" => 20)
saveScores(data, "scores.csv")
loaded = loadScores("scores.csv")
println(loaded)

بررسی وجود فایل

if isfile("data.txt")
    println("فایل وجود دارد!")
else
    println("فایل نیست!")
end
الگوی open(...) do f ... end بهترین روش است — فایل تضمینی بسته می‌شود حتی اگر خطا رخ دهد!

این مبحث بخشی از دوره آموزش کامل جولیا است.

ابزارهای مرتبط