3

ウィンドウアプリケーションのファイルダイアログからcsvファイルを読みました。

いいえ、特定のファイルをフォルダにコピーしたいのですが、問題が発生しています。

コードは次のとおりです

OpenFileDialog op1 = new OpenFileDialog();
op1.Multiselect = false;
op1.ShowDialog();
op1.Filter = "allfiles|*.csv";
txtSearchName.Text = op1.FileName;


File.Copy(op1.FileName, "C:\\Users\\skysoft\\Documents\visual studio 2010\\Projects\\MailSend\\MailSend\\CsvFile\\" + op1.FileName);

私が間違っていることを助けてください。

4

3 に答える 3

2

あなたのような問題を避けるために、パス文字列の前に常に @ 記号を使用することをお勧めします。「visual studio 2010」の前にバックスラッシュが 1 つ必要です。例えば:

@"C:\Users\skysoft\Documents\visual studio 2010\Projects\MailSend\MailSend\CsvFile\"

また、あなたは方法を与えています

"C:\\Users\\skysoft\\Documents\visual studio 2010\\Projects\\MailSend\\MailSend\\CsvFile\\" + op1.FileName

に変換する

"C:\\Users\\skysoft\\Documents\visual studio 2010\\Projects\\MailSend\\MailSend\\CsvFile\\" + "c:\\...."

あなたはPath.GetFileName(op1.FileName)キーボードPが言ったようにするか、op1.FileName.Substring(op1.LastIndexOf('\\'))

于 2013-07-03T08:27:52.503 に答える
2

文字列を確認してください。Visual Studio の前にバックスラッシュ \ がありません

File.Copy(op1.FileName, "C:\\Users\\skysoft\\Documents\visual studio 2010\\Projects\\MailSend\\MailSend\\CsvFile\\" + op1.FileName);
于 2013-07-03T08:25:05.033 に答える