ceobros
Member
- Joined
- Jul 8, 2022
- Messages
- 10
- Programming Experience
- Beginner
I need a way to open a csv file and write the contents of it into a listview component.
I tried but it doesn't work.
Here is my export from listview to csv:
And here is my Import Code (can't figure out how to get it to work)
I tried but it doesn't work.
Here is my export from listview to csv:
Export to CSV:
private async void savCoord_Click(object sender, EventArgs e)
{
SaveFileDialog saveFileDialog = new SaveFileDialog();
saveFileDialog.InitialDirectory = Path.GetPathRoot(Environment.SystemDirectory);
saveFileDialog.Filter = "CSV|*.csv";
if (saveFileDialog.ShowDialog() == DialogResult.OK)
{
using (StreamWriter sw = new StreamWriter(new FileStream(saveFileDialog.FileName, FileMode.Create), Encoding.UTF8))
using (FileStream fileStream = new FileStream(saveFileDialog.FileName, FileMode.Create))
using (StreamWriter streamWriter = new StreamWriter(fileStream))
{
foreach (ListViewItem item in PositionsListView.Items)
{
await sw.WriteLineAsync(string.Format("{0},{1},{2},{3}", item.SubItems[0].Text, item.SubItems[1].Text, item.SubItems[2].Text, item.SubItems[3].Text));
MessageBox.Show("Success!", "Notice", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
}
}
And here is my Import Code (can't figure out how to get it to work)
Import from csv to Listview:
private void openCoord_Click(object sender, EventArgs e)
{
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.InitialDirectory = Path.GetPathRoot(Environment.SystemDirectory);
openFileDialog.Filter = "CSV|*.csv";
try
{
if (openFileDialog.ShowDialog() == DialogResult.OK)
{
FileStream srcFS;
srcFS = new FileStream(openFileDialog.FileName, FileMode.Open);
StreamReader srcSR = new StreamReader(srcFS, System.Text.Encoding.Default);
foreach (ListViewItem item in PositionsListView.Items)
{
string ins = srcSR.ReadLine();
string[] row = { "X", "Y", "L/R", };
ListViewItem listViewItem = new ListViewItem(row);
PositionsListView.Items.Add(listViewItem);
}
}
}
catch (Exception errorMsg)
{
MessageBox.Show(errorMsg.Message, "Error reading a file", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}