Witam. Chciałbym w swoim programie odczytać pliki .csv po przez dataGirdView. Znalazłem kod do tego. Jednak jest ona napisany w c#. Mało znam c# a w c++/cli dopiero zaczynam, jednak udało mi się część kodu przepisać do c++. Niestety z dalszą częścią mam problem. Może ktoś miałby pomysł jak wygląda odpowiednik reszty kodu C# w C++/cli? Za pomoc byłbym wdzięczny.
kod C#:
private void LoadBooks()
{
string delimiter = ",";
string tableName = "BooksTable";
string fileName = "databas.csv";
DataSet dataset = new DataSet();
StreamReader sr = new StreamReader(fileName);
dataset.Tables.Add(tableName);
dataset.Tables[tableName].Columns.Add("produkt");
dataset.Tables[tableName].Columns.Add("price");
string allData = sr.ReadToEnd();
//---- dotąd przepisałem na c++
//string[] rows = allData.split("\r".ToCharArray());
string[] rows = allData.Split("\r\n".ToCharArray());
foreach(string r in rows)
{
string[] items = r.Split(delimiter.ToCharArray());
dataset.Tables[tableName].Rows.Add(items);
}
this.dataGirdView1.DataSource = dataset.Tables[0].DefaultView;
}
To ja zamieniłem na c++/cli
String ^delmiter = ",";
String ^tableName = "BooksTable";
String^ fileName = "databas.csv";
DataSet ^dataset;
dataset = gcnew DataSet();
StreamReader ^sr = gcnew System::IO::StreamReader(fileName);
dataset->Tables->Add(tableName);
dataset->Tables[tableName]->Columns->Add("produkt");
dataset->Tables[tableName]->Columns->Add("price");
String ^allData = sr->ReadToEnd();