Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 12 kết quả

Đề tài: Xóa dòng cuối trong file.txt bằng C#?

  1. #1
    Ngày gia nhập
    11 2008
    Bài viết
    21

    Mặc định Xóa dòng cuối trong file.txt bằng C#?

    Các bạn ơi làm làm sao để xóa được dòng cuối cùng trong file txt vậy? Bạn nào biết làm ơn chỉ giúp mình với! Thanks!

  2. #2
    Ngày gia nhập
    07 2007
    Nơi ở
    TP.HCM
    Bài viết
    199

    Trước đây mình cũng đã thắc mắc vấn đề này, và hình như không có cách nào khác ngoài cách làm thông thường là copy n-1 dòng đầu ra file mới rồi delete file cũ.

  3. #3
    Ngày gia nhập
    11 2007
    Nơi ở
    Biết để làm gì?
    Bài viết
    827

    Thế không phải xóa dòng cuối mà chỉ xóa dòng bất kỳ trong file thì làm thế nào được nhỉ
    Cánh Chym ứ mỏi

  4. #4
    Ngày gia nhập
    01 2009
    Bài viết
    14

    Sao không đọc từng dòng ( ReadLine) cho đến hết file, rồi tìm trong file chuỗi đó mà xóa?
    Dòng bất kì thì cũng phải có dấu hiệu nhận dạng chứ ( dòng thứ n từ đầu file thì cho thêm biến đếm, hay tìm kiếm dấu hiệu của dòng muốn xóa,...)

  5. #5
    Ngày gia nhập
    11 2007
    Nơi ở
    Biết để làm gì?
    Bài viết
    827

    biết là thế,nhưng xóa thế nào?cậu thử làm xem?hơn nữa,nếu file rất lớn thì sao
    Cánh Chym ứ mỏi

  6. #6
    Ngày gia nhập
    01 2009
    Bài viết
    14

    Mặc định Xóa dòng cuối trong file.txt bằng C#?

    Ghi đè kí tự xuống dòng hay j đó. Hoặc có thể lấy dòng sau đè lên cho đến hết file. Mới nghĩ thôi .
    File rất lớn..... Nó chậm thôi. Còn cách nào khác...chưa biết!

  7. #7
    Ngày gia nhập
    07 2007
    Nơi ở
    TP.HCM
    Bài viết
    199

    Nếu file có kích thước lớn, trong khi ta chỉ cần xóa 1 dòng nhỏ nào đó, thì cách tốt nhất đỡ mất công nhất là đánh dấu đặc biệt vào dòng đó, giống như các chương trình tạo file database vây (càng chỉnh sửa, size càng phình to mặc dù không thêm vào gì hết..., chỉ khi nào nén thì nó mới tạo lại file mới ra đĩa thôi).

  8. #8
    Ngày gia nhập
    11 2007
    Nơi ở
    Biết để làm gì?
    Bài viết
    827

    @Khánh : đánh dấu là sao hả bạn?chưa hiểu ý lắm ,nếu yêu cầu là xóa hẳn line dó ra khỏi file thì sao?
    @khoavl:đây là code đọc file nhưng ko đọc dòng cuối cùng, cậu chỉ cần overwrite lại file cũ là được, để tìm xem còn cách nào không.

    Visual C# Code:
    1.  try
    2.             {
    3.                 StreamReader sr = new StreamReader();
    4.                 int i = 0;
    5.                 int numberOfLine = 0;
    6.                
    7.                
    8.  
    9.                 sr = File.OpenText(_FileName);
    10.                
    11.                 ArrayList contents=new ArrayList();
    12.                 string newContents = "";//noi dung file ko co dong cuoi
    13.                 while (!sr.EndOfStream)
    14.                 {
    15.                     numberOfLine++;
    16.                     contents(numberOfLine) += sr.ReadLine();
    17.                 }
    18.                 sr.Close();
    19.  
    20.                 for (i = 0; i < contents.Count - 1; i++)
    21.                     newContents += contents(i);
    22.             }
    23.             catch(IOException ex)
    24.             {
    25.                 Console.WriteLine(ex.Message);
    26.             }
    Cánh Chym ứ mỏi

  9. #9
    Ngày gia nhập
    09 2006
    Nơi ở
    /usr/share/.hack@
    Bài viết
    1,433

    1. Đọc file cũ: string lines[] = File.ReadAllLines("file_name.txt");
    2. Xóa file cũ. File.Delete
    3. Viết vào file mới dùng using TextWriter, chỉ viết đến lines[lines.Count()-1] thì dừng.
    4. Đóng hết tất cả các stream lại
    None!

  10. #10
    Ngày gia nhập
    11 2008
    Bài viết
    21

    Mình cảm ơn các bạn nhiều nha! Mình đã làm được rồi nhưng dùng cách thông thường là copy n-1 dong rồi xóa file gốc của anh Đ.Khánh. Bạn nào có cách hay hơn thì chỉ cho mình với nha. Thanks! hii

Các đề tài tương tự

  1. Lấy 1 dòng ra từ file text và xóa dòng đó đi trong file cũ!!!
    Gửi bởi tranquang_hq trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 0
    Bài viết cuối: 05-12-2012, 04:00 PM
  2. Lập trình C Xóa các dấu cách trên các dòng trong file text!
    Gửi bởi thinhnh trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 0
    Bài viết cuối: 13-11-2012, 06:55 PM
  3. Xóa 1 dòng trong file
    Gửi bởi evilknight trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 0
    Bài viết cuối: 18-04-2012, 10:45 AM
  4. xóa và ghi dòng dữ liệu khác o file txt trong C#
    Gửi bởi star trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 11
    Bài viết cuối: 04-11-2011, 03:30 AM
  5. Lập trình C xóa các dòng giống nhau trong FILE văn bản?
    Gửi bởi lenam6000na trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 1
    Bài viết cuối: 26-07-2008, 11:26 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn