Từ 1 tới 5 trên tổng số 5 kết quả

Đề tài: cách tạo datatable và lấy data những column theo ý muốn từ 1 csv file

  1. #1
    Ngày gia nhập
    08 2022
    Bài viết
    10

    Mặc định cách tạo datatable và lấy data những column theo ý muốn từ 1 csv file

    hello MN. mình dang tạo 1 class để lấy data từ 1 csv file có sẵn để đổ vào gridview nhưng không biết cách lấy một vài column theo ý muốn . minh có 1 file summary.cs nằm trong folder "C:\Users" file gồm 10 column ( col1, col2, clo3................col10) bây giò mình chỉ muốn lấy data của 3 column: col1, col3, col4 để bind zo gridview. hiện tại mình sử dụng code bên dưới thì nó show all column cua csv file( csvfile put trong source folder project). trong đó có vài column mình ko cần hiển thị nên nhờ MN help giùm
    Code:
                string[] str = File.ReadAllLines(Server.MapPath("~/excel file/summary.csv"));
                
                
                DataTable dt = new DataTable();
                
                
                
                string[] temp = str[0].Split(',');
               
              
               
                foreach (string t in temp)
                {
                  
                    dt.Columns.Add(t);
                    
                }
    
    
               
                for (int i = 1; i < str.Length; i++)
                {
                    string [] t = str[i].Split(',');
                    dt.Rows.Add(t);
                    
    
                }
                           
               
                Grvcontent.DataSource = dt;
    
                
                Grvcontent.DataBind();
    Đã được chỉnh sửa lần cuối bởi maiyeuem1789 : 14-09-2022 lúc 03:00 PM.

  2. #2
    Ngày gia nhập
    12 2015
    Nơi ở
    Đà Nẵng
    Bài viết
    656

    Trích dẫn Nguyên bản được gửi bởi maiyeuem1789 Xem bài viết
    hello MN. mình dang tạo 1 class để lấy data từ 1 csv file có sẵn để đổ vào gridview nhưng không biết cách lấy một vài column theo ý muốn . minh có 1 file summary.cs nằm trong folder "C:\Users" file gồm 10 column ( col1, col2, clo3................col10) bây giò mình chỉ muốn lấy data của 3 column: col1, col3, col4 để bind zo gridview. hiện tại mình sử dụng code bên dưới thì nó show all column cua csv file( csvfile put trong source folder project). trong đó có vài column mình ko cần hiển thị nên nhờ MN help giùm
    Code:
                string[] str = File.ReadAllLines(Server.MapPath("~/excel file/summary.csv"));
                
                
                DataTable dt = new DataTable();
                
                
                
                string[] temp = str[0].Split(',');
               
              
               
                foreach (string t in temp)
                {
                  
                    dt.Columns.Add(t);
                    
                }
    
    
               
                for (int i = 1; i < str.Length; i++)
                {
                    string [] t = str[i].Split(',');
                    dt.Rows.Add(t);
                    
    
                }
                           
               
                Grvcontent.DataSource = dt;
    
                
                Grvcontent.DataBind();
    Visual C# Code:
    1. using System.Linq;
    2. //.....
    3.  
    4.  
    5. int[] cols = new[] {0, 2, 3};
    6. string[] str = File.ReadAllLines(Server.MapPath("~/excel file/summary.csv"));
    7. DataTable dt = new DataTable();
    8. string[] temp = str[0].Split(',');
    9. string[] temp2 = cols.Select(i => temp[i]).ToArray();
    10. foreach (string t in temp2)
    11. {
    12.     dt.Columns.Add(t);
    13. }
    14. for (int i = 1; i < str.Length; i++)
    15. {
    16.     string [] t = str[i].Split(',');
    17.     string[] t2 = cols.Select(i => t[i]).ToArray();
    18.     dt.Rows.Add(t2);
    19. }
    20. Grvcontent.DataSource = dt;
    21. Grvcontent.DataBind();
    Code chưa chạy thử!

  3. #3
    Ngày gia nhập
    08 2022
    Bài viết
    10

    Khoa giải thích giùm mình dòng lệnh này dc không “string[] temp2 = cols.Select(i => temp[i]).ToArray();”

  4. #4
    Ngày gia nhập
    12 2015
    Nơi ở
    Đà Nẵng
    Bài viết
    656

    Trích dẫn Nguyên bản được gửi bởi maiyeuem1789 Xem bài viết
    Khoa giải thích giùm mình dòng lệnh này dc không “string[] temp2 = cols.Select(i => temp[i]).ToArray();”
    cols = {0, 2, 3} tương ứng với cột 1, 3, 4
    Lệnh trên chọn ra giá trị thứ 0, 2, 3 từ mảng temp

  5. #5
    Ngày gia nhập
    08 2022
    Bài viết
    10

    Trích dẫn Nguyên bản được gửi bởi khoaph Xem bài viết
    cols = {0, 2, 3} tương ứng với cột 1, 3, 4
    Lệnh trên chọn ra giá trị thứ 0, 2, 3 từ mảng temp
    Cảm ơn khoa mình làm dc rồi

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