Hiển thị kết quả từ 1 đến 5 / 5
Chủ đề: All about File I/O in C++
-
26-09-2002 13:17 #1
All about File I/O in C++
Tôi post bài này lên không dám qua mặt các “cao thủ”, mà chỉ để nói rằng trong diễn đ àn rất cần các bài post này đ ể mọi ngư ời cùng học, và t ôi hi vọng là các cao thủ sẽ post các bài của mình lên để cho tôi học hỏi.
Bài này sẽ g ới thiệu về File I/O.
1. Write To File.
Chúng ta cùng xem chư ơng trình đầu tiên nhé:
#include <fstream.h>
void main()
{
ofstream WriteToFile(“f irs.txt”);
WriteToFile << “Hello World!”;
WriteToFile.close();
}
Chương trình này tạo một file “first.txt” (ở nơi cùng thư mục với file chương trình của bạn), rồi ghi dòng “Hello World!” vào file.
Hãy đi từng dòng nhé:
#include <fstream.h> - Thư viện để sử dụng các hàm File I/O.
ofstream WriteToFile(“first.txt”):
ofstream là một lớp. Dòng n ày tạo một đối tượng thể hiện lớp ofstream là WriteToFile (hoặc một tên bất kỳ), dùng hàm c ontructor với tham số “f irst.txt”. Hàm này sẽ tạo ra một file với tên là “f irst.txt”.
WriteToFile << “Hello World!”: ghi chuỗi “Hello World!” vào file.
WriteToFile.close(): đ óng file lại. Mỗi khi bạn mở một file, sau đó bạn phải đóng nó lại.
2. Đọc từ File.
Chương trình.
#include <fstream.h>
void main(){
ifstream OpenFile("first.txt");
char ch;
while(!OpenFile.eof())
{
OpenFile.get(ch);
cout << ch;
}
OpenFile.close();
}
Chương trình này dùng cách đọc từng ký tự (còn có cách khác là đọc từng từ (word) và đọc từng dòng (line) - sẽ tham khảo sau).
ifstream OpenFile(“first.txt”) – Tạo một đối t ượng thể hiện lớp ifstream tên là OpenFile (có thể dùng tên khác tuỳ ý). Hàm contructor với tham số “first.txt”, đây là file mà chúng ta đã tạo ở mục trên. Hàm này sẽ mở file “first.txt” để đọc.
char ch: dòng này tôi “bet” rằng các bạn đã quá quen thuộc.
while(!OpenFile.eof()) - hàm eof() của lớp ifstream. Hàm eof() trả về giá trị 0 khi chưa kết thúc file, ngược lại là 1.
OpenFile.get(ch); - get(char &ch) là một hàm của lớp ifstream, hàm này sẽ đọc từng ký tự của file và gán cho biến ch. Sau đó sẽ chỉ đến ký tự tiếp theo (do inside-pointer)
Vòng lặp while... sẽ lặp cho tới khi kết thúc file, mỗi lần lặp sẽ đọc một ký tự và gán cho biến ch. Sau đó đưa ra màn h ình ký t ự đó:
cout<<ch;
Vòng lặp tiếp theo sẽ đọc ký tự tiếp theo sau ký tự trước (do inside-pointer: điều này sẽ được giải thích ở phần sau). Do đó khi chạy chương trình, sẽ xuất hiện trên màn hình dòng ch ữ:
“Hello World!”
(Còn ti ếp)
Mong các bạn đóng góp, để tôi xem có nên tiếp tục không.
-
26-09-2002 13:51 #2
Bài hay lắm ,bạn cứ tiếp tục đi.Mình ủng hộ đó.
-
26-09-2002 14:45 #3
Registered User
- Tham gia
- 26-09-2002
- Bài viết
- 3
- Like
- 0
- Thanked 0 Times in 0 Posts
good job ! this is for u... @>----.
không cần phải rào trước đón sau kỹ quá thế, bạn post bài đóng góp là quý lắm rồi
.
-
26-09-2002 15:58 #4
Bác DWW này, sao lại đổi nick vậy hử, tính đi bằng 2 tay ha?

sevlowhtiwsecnad hay dancewithwolves????
Được sửa bởi bpmtri lúc 16:10 ngày 26-09-2002
-
27-09-2002 05:41 #5
bác bpmtri@ mắt tinh thật...
. Thế mà tớ cứ tưởng bác cận nặng lắm chứ...


Quote
Bookmarks