我编写了一个程序,它读取csv文件,进行一些更改并写入新的csv文件。
我希望用户能够使用Windows窗体上的打开文件对话框从目录中选择要读取的csv文件。
到目前为止,我已经能够编写一些代码,以便用户可以查找文件,但我不确定如何将用户选择的文件链接到steamreader。
这是读取和写入csv文件的代码
try
{
using (StreamWriter sw = new StreamWriter("X:/PublishedSoftware/Data/NEWPYAEGON1PENSION.csv"))
{
using (StreamReader sr = new StreamReader(""))
{
这是打开文件对话框的代码
private void btnFindAegonFile_Click(object sender, EventArgs e)
{
openFileDialog1.Filter = "csv files(*.csv)|*.csv|All files(*.*)|*.*";
openFileDialog1.FileName = "Browse for the AEGON file.";
DialogResult result = openFileDialog1.ShowDialog();
txtFindAegonFile.Text = this.openFileDialog1.FileName;
答案 0 :(得分:3)
如果您有文件名:
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
string fileName = this.openFileDialog1.FileName;
...
}
您可以使用流阅读器(代替...
)阅读内容:
using (StreamReader sr = new StreamReader(fileName))
或直接阅读内容:
string input = File.ReadAllText(fileName);
答案 1 :(得分:0)
您必须通过将文件路径传递给StreamWriter来完成FileOpen Dialog代码段,如:
using (StreamWriter sw = new StreamWriter(fileName));
// ... open the file w/StreaWriter
答案 2 :(得分:0)
使用openFileDialog1
' FileOK
事件来了解用户何时选择了有效文件。然后,您可以从openFileDialog1.FileName
恢复文件路径。
答案 3 :(得分:0)
以下是如何从文件名转到StreamReader的片段:
var fs = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
using (var sr = new StreamReader(fs))
{
...
}
答案 4 :(得分:0)
我使用了它:
string readfilename = txtFindAegonFile.Text;
try
{
using (StreamReader sr = new StreamReader(readfilename))
using (StreamWriter sw = new StreamWriter("X:/PublishedSoftware/Data/NEWPYAEGON1PENSION.csv"))
}