faiqaa Ответов: 4

Как отобразить данные текстового файла, разделенные запятыми, в виде таблицы данных с помощью VB?


Я сохранил информацию о запасах в текстовый файл теперь мне нужно было бы отобразить данные, которые я сохранил в текстовом файле, в виде таблицы данных, я попытался использовать приведенный ниже код, но он работает частично, вместо разделения данных он загружает целую строку данных (из текстового файла) в одну ячейку, Я должен быть в состоянии разделить эту строку, а затем отобразить ее в одной строке таблицы данных. У кого-нибудь есть какие-нибудь идеи?Спасибо.

Что я уже пробовал:

Dim STUDENT_FILE As String = "Z:\Desktop\Customers.txt"
       Dim objReader As New System.IO.StreamReader(STUDENT_FILE)

       Dim strDataline As String 'Data line
       Dim strArr(2) As String ' Array for bits of line
       Dim blfound As Boolean
       ListBox1.Items.Clear()


       Do While objReader.Peek() <> -1 'read the file till the end.
           strDataline = (objReader.ReadLine()) ' read line and store into variable
           strArr = strDataline.Split(",") 'Split line and put into array

           DataGridView1.Rows.Add(strDataline)
           blfound = True

       Loop
       MsgBox("stock data has been loaded")
       objReader.Close()
       If blfound = False Then MsgBox("stock data has not been found")

4 Ответов

Рейтинг:
2

OriginalGriff

Используйте это, чтобы прочитать его в DataTable: Быстрый читатель CSV[^]
Затем используйте таблицу в качестве параметра источника данных вашего DataGridView.


Рейтинг:
2

aaronzeng

protected void ImportCSV(object sender, EventArgs e)
{
    //Upload and save the file
    string csvPath = Server.MapPath("~/Files/") + Path.GetFileName(FileUpload1.PostedFile.FileName);
    FileUpload1.SaveAs(csvPath);
 
    //Create a DataTable.
    DataTable dt = new DataTable();
    dt.Columns.AddRange(new DataColumn[3] { new DataColumn("Id", typeof(int)),
        new DataColumn("Name", typeof(string)),
        new DataColumn("Country",typeof(string)) });
 
    //Read the contents of CSV file.
    string csvData = File.ReadAllText(csvPath);
 
    //Execute a loop over the rows.
   foreach (string row in csvData.Split('\n'))
    {
        if (!string.IsNullOrEmpty(row))
        {
            dt.Rows.Add();
            int i = 0;
 
            //Execute a loop over the columns.
            foreach (string cell in row.Split(','))
            {
                dt.Rows[dt.Rows.Count - 1][i] = cell;
                i++;
            }
        }
    }
 
    //Bind the DataTable.
    GridView1.DataSource = dt;
    GridView1.DataBind();
}


Рейтинг:
2

aaronzeng

 have the option to save the contents of the listview that was saved into text file.
now i would like to load the text file into datagridview in vb.net but i have no idea how to do it as this is my first time in doing it and i had googled around but couldn't find the information i needed.

can anybody show me example of code to load text file data into datagridview? i am using vb.net and mysql

thanks in advance!!


[no name]

Вы не задаете вопросов в ответах, вам уже сказали опубликовать отдельную тему.