2013-03-08 63 views
12

Tôi đang cố lưu một danh sách vào một tập tin văn bản.Lưu danh sách vào tập tin txt

Đây là mã của tôi:

public void button13_Click(object sender, EventArgs e) 
{ 
    TextWriter tw = new StreamWriter("SavedLists.txt"); 

    tw.WriteLine(Lists.verbList); 
    tw.Close(); 
} 

Đây là những gì tôi nhận được trong file văn bản:

System.Collections.Generic.List`1 [System.String]

Tôi có phải sử dụng ConvertAll<> không? Nếu vậy, tôi không biết cách sử dụng nó.

+0

nơi trong mã của bạn để bạn xác định 'List.verbList' ..? – MethodMan

+0

Lưu danh sách những gì ?? –

+3

Rõ ràng OP là mới đối với Stack Overflow. Cho anh ta nghỉ ngơi. Không cần thiết cho việc downvoting, chỉ để lại bình luận hữu ích. –

Trả lời

34

Giả Danh sách Generic của bạn là kiểu String:

TextWriter tw = new StreamWriter("SavedList.txt"); 

foreach (String s in Lists.verbList) 
    tw.WriteLine(s); 

tw.Close(); 

Ngoài ra, với từ khóa sử dụng:

using(TextWriter tw = new StreamWriter("SavedList.txt")) 
{ 
    foreach (String s in Lists.verbList) 
     tw.WriteLine(s); 
} 
+3

-1 cho không sử dụng' using' –

+9

'Bhushan' số phiếu âm 1 không phù hợp ở đây nếu OP không muốn sử dụng? +3 đây là câu trả lời hay nhất – MethodMan

+0

Hoàn hảo! Điều đó hoạt động! Cảm ơn! –

6

@ câu trả lời của Jon là rất tốt và sẽ đưa bạn đến nơi bạn cần phải đi. Vậy tại sao mã của bạn in ra nó là gì. Câu trả lời: Bạn không viết ra các nội dung trong danh sách của mình, nhưng biểu diễn chuỗi của danh sách của bạn chính nó là, bởi một cuộc gọi ngầm đến Lists.verbList.ToString(). Object.ToString() xác định hành vi mặc định bạn đang thấy ở đây.

18

Framework 4: không có nhu cầu sử dụng StreamWriter:

System.IO.File.WriteAllLines("SavedLists.txt", Lists.verbList); 
Các vấn đề liên quan