Menulis File dengan ofstream
Tulis file output
Menulis File dengan ofstream adalah pelajaran C++ Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar C++ Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus C++ Academy mencakup 4 pelajaran total.
Apa Itu ofstream?
std::ofstream (aliran berkas keluaran) menulis data ke berkas. Cara kerjanya seperti std::cout, tetapi tujuannya adalah sebuah berkas.
#include <iostream>
#include <fstream>
int main() {
std::ofstream out("hello.txt");
out << "Hello, file!\n";
std::cout << "wrote file\n";
return 0;
}Menulis Teks
Gunakan operator << untuk menulis teks dan angka, sama persis seperti mencetak ke konsol.
#include <iostream>
#include <fstream>
int main() {
std::ofstream out("report.txt");
out << "Score: " << 95 << '\n';
out << "Grade: A\n";
std::cout << "done\n";
return 0;
}Pengosongan Secara Bawaan
Membuka berkas yang sudah ada dengan ofstream akan menghapus isi sebelumnya. Setiap proses berjalan dari awal.
#include <iostream>
#include <fstream>
int main() {
std::ofstream("t.txt") << "old content\n";
std::ofstream out("t.txt");
out << "new content\n";
std::ifstream in("t.txt");
std::string line; std::getline(in, line);
std::cout << line << '\n';
return 0;
}Menambahkan dengan Mode app
Teruskan std::ios::app untuk mempertahankan isi yang sudah ada dan menambahkan data baru di bagian akhir.
#include <iostream>
#include <fstream>
int main() {
std::ofstream("log.txt") << "line1\n";
std::ofstream out("log.txt", std::ios::app);
out << "line2\n";
out.close();
std::ifstream in("log.txt");
std::string l; int n = 0;
while (std::getline(in, l)) ++n;
std::cout << n << " lines\n";
return 0;
}Memeriksa Keberhasilan Penulisan
Uji aliran setelah membukanya. Jika berada dalam status bad, penulisan akan gagal secara diam-diam.
#include <iostream>
#include <fstream>
int main() {
std::ofstream out("ok.txt");
if (!out) {
std::cout << "failed to open\n";
return 1;
}
out << "safe write\n";
std::cout << "write ok\n";
return 0;
}Menulis Angka dan Memformatnya
Manipulator I/O seperti std::fixed dan std::setprecision juga berlaku untuk aliran berkas.
#include <iostream>
#include <fstream>
#include <iomanip>
int main() {
std::ofstream out("pi.txt");
out << std::fixed << std::setprecision(3) << 3.14159 << '\n';
out.close();
std::ifstream in("pi.txt");
std::string s; in >> s;
std::cout << s << '\n';
return 0;
}Menulis Data dalam Perulangan
Tulislah banyak baris dengan melakukan perulangan. Setiap iterasi mengirimkan satu catatan ke berkas.
#include <iostream>
#include <fstream>
int main() {
std::ofstream out("squares.txt");
for (int i = 1; i <= 5; ++i) out << i << ' ' << i * i << '\n';
out.close();
std::cout << "wrote 5 rows\n";
return 0;
}Mengosongkan Penyangga
Keluaran disimpan dalam penyangga. std::flush atau std::endl memaksa penyangga ditulis ke cakram segera; menutup aliran juga mengosongkan penyangga.
#include <iostream>
#include <fstream>
int main() {
std::ofstream out("flush.txt");
out << "important" << std::flush;
std::cout << "flushed to disk\n";
return 0;
}endl vs Baris Baru
'\n' hanya menambahkan baris baru. std::endl menambahkan baris baru dan mengosongkan penyangga, sehingga lebih lambat dalam perulangan yang sering.
#include <iostream>
#include <fstream>
int main() {
std::ofstream out("nl.txt");
out << "fast\n"; // newline only
out << "slow" << std::endl; // newline + flush
std::cout << "both written\n";
return 0;
}Menulis Lalu Membaca Kembali
Pola yang umum adalah: write data, close, lalu buka kembali untuk membacanya.
#include <iostream>
#include <fstream>
int main() {
{
std::ofstream out("rt.txt");
out << 7 << ' ' << 8 << '\n';
}
std::ifstream in("rt.txt");
int a, b; in >> a >> b;
std::cout << a + b << '\n';
return 0;
}Memilih Mode Pembukaan
Gabungkan bendera dengan |. Mode yang umum: ios::out (bawaan), ios::app (menambahkan), ios::trunc (menghapus).
#include <iostream>
#include <fstream>
int main() {
std::ofstream out("modes.txt", std::ios::out | std::ios::trunc);
out << "fresh\n";
std::cout << "opened with explicit modes\n";
return 0;
}Pemeriksaan Singkat
Uji pemahaman Anda tentang mode ofstream.
Ringkasan
Anda telah mempelajari bahwa std::ofstream:
- menulis dengan
<<, secara bawaan mengosongkan isi lama - menambahkan dengan
std::ios::app - menyangga keluaran;
std::flush/std::endl/penutupan mengirimkannya ke cakram
Berikutnya, Anda akan menangani byte mentah dengan I/O berkas biner.
Belajar C++ dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 51
- Pelajaran
- 203
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Menulis File dengan ofstream” gratis?
Ya — teks lengkap “Menulis File dengan ofstream” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus C++ Academy, upgrade ke CoddyKit PRO. Kursus C++ Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Menulis File dengan ofstream”?
Tulis file output Kamu berlatih C++ Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai C++ Academy?
Tidak diperlukan pengalaman sebelumnya. C++ Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.
Berapa lama pelajaran “Menulis File dengan ofstream” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran C++ Academy ini?
Ya. Setiap pelajaran C++ Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Membaca File dengan ifstream
- Menulis File dengan ofstream
- I/O File Biner
- Penanganan Error dan Status