Ada banyak cara berbeda untuk membaca dan menulis file ( file teks , bukan biner) di C #.
Saya hanya perlu sesuatu yang mudah dan menggunakan jumlah kode paling sedikit, karena saya akan bekerja dengan banyak file dalam proyek saya. Saya hanya butuh sesuatu string
karena yang saya butuhkan hanyalah membaca dan menulis string
.
string.Write(filename)
. Mengapa solusi Microsoft lebih sederhana / lebih baik daripada solusi saya?"foo".Write(fileName)
Anda dapat dengan mudah membuat ekstensi untuk melakukannya sukaipublic static Write(this string value, string fileName) { File.WriteAllText(fileName, value);}
dan menggunakannya dalam proyek Anda.Selain
File.ReadAllText
,File.ReadAllLines
, danFile.WriteAllText
(dan pembantu serupa dariFile
kelas) yang ditunjukkan dalam jawaban lain Anda dapat menggunakanStreamWriter
/StreamReader
kelas.Menulis file teks:
Membaca file teks:
Catatan:
readtext.Dispose()
bukanusing
, tetapi itu tidak akan menutup file / reader / writer jika ada pengecualianusing
/Close
adalah alasan paling umum dari "mengapa data tidak ditulis ke file".sumber
using
streaming Anda seperti yang ditunjukkan dalam jawaban lain - stackoverflow.com/a/7571213/477420using System.IO;
menggunakan StreamWriter dan StreamReader .new StreamWriter("write.txt", true)
Ini akan membuat file jika tidak ada file, selain itu akan ditambahkan ke file yang ada.sumber
fs
pada akhirnya?Sederhana, mudah dan juga membuang / membersihkan objek setelah Anda selesai dengan itu.
sumber
Cara termudah untuk membaca dari file dan menulis ke file:
sumber
File.WriteAllText
untuk menulis bagian?@AlexeiLevenkov menunjuk saya pada "cara termudah" lain yaitu metode ekstensi . Hanya butuh sedikit pengkodean, lalu memberikan cara termudah mutlak untuk membaca / menulis, ditambah lagi menawarkan fleksibilitas untuk membuat variasi sesuai dengan kebutuhan pribadi Anda. Ini adalah contoh lengkapnya:
Ini mendefinisikan metode ekstensi pada
string
jenisnya. Perhatikan bahwa satu-satunya hal yang benar-benar penting adalah argumen fungsi dengan kata kunci tambahanthis
, yang membuatnya merujuk ke objek tempat metode dilampirkan. Nama kelas tidak masalah; kelas dan metode harus dideklarasikanstatic
.Ini adalah cara menggunakan
string extension method
, perhatikan bahwa ini merujuk secara otomatis keclass Strings
:Saya tidak akan pernah menemukan ini sendiri, tetapi ini bekerja dengan baik, jadi saya ingin membagikan ini. Selamat bersenang-senang!
sumber
Ini adalah metode terbaik dan paling umum digunakan untuk menulis dan membaca dari file:
Cara lama, yang saya diajarkan di perguruan tinggi adalah dengan menggunakan pembaca aliran / penulis aliran, tetapi File I / O kurang kikuk dan membutuhkan lebih sedikit baris kode. Anda dapat mengetik "File." di IDE Anda (pastikan Anda menyertakan pernyataan impor System.IO) dan lihat semua metode yang tersedia. Di bawah ini adalah contoh metode untuk membaca / menulis string ke / dari file teks (.txt.) Menggunakan Aplikasi Formulir Windows.
Tambahkan teks ke file yang ada:
Dapatkan nama file dari pengguna melalui file explorer / dialog file terbuka (Anda akan memerlukan ini untuk memilih file yang ada).
Dapatkan teks dari file yang ada:
sumber
Atau, jika Anda benar-benar tentang garis:
System.IO.File juga mengandung metode statis WriteAllLines , sehingga Anda bisa melakukannya:
sumber
Ada baiknya saat membaca untuk menggunakan kontrol OpenFileDialog untuk menelusuri file apa pun yang ingin Anda baca. Temukan kode di bawah ini:
Jangan lupa untuk menambahkan
using
pernyataan berikut untuk membaca file:using System.IO;
Untuk menulis file, Anda dapat menggunakan metode ini
File.WriteAllText
.sumber
sumber
Anda sedang mencari
File
,StreamWriter
danStreamReader
kelas.sumber
sumber