文件信息,数据网格视图,file.exist
fileinfo, datagridview, file.exist
任何人都可以帮助我,我仍在弄清楚 C#,我在我的主窗体上有一个 datagridview,目前在那里保存上传的文件信息,但我想检查一下文件是否存在如果确实上传了就不要上传,但老实说我很难理解文件信息、目录信息之间的区别以及如何使用它,请查看我的代码,
提前致谢!
string sqlSt = "Insert into Documents (CategoryID, PathofDocument,DocumentName,FileSize,FileExtension,AddedBy,LastActioned) values (@CategoryID,@FilePath,@FileName,@FileSize,@FileExtension,@AddedBy,@LastActioned)";
OpenFileDialog fi = new OpenFileDialog();
//DialogResult result = fi.ShowDialog();
fi.Filter = "allfiles (*.*)|*.* |Text files(*.txt)|*.txt | Excel Files (*.xls)| *.xls |EmailFiles (*.msg) | *.msg";
string fileio = fi.FileName;
FileInfo file = new FileInfo(fileio);
if (fi.ShowDialog() != DialogResult.OK)
{
if (file.Exists(,fileio))
{ }
// MessageBox.Show("File Already exist" + file.FullName);
}
else
if (file.Exists != true)
{
using (SqlConnection Conn = new SqlConnection(Connstring))
{
using (SqlCommand cmd = new SqlCommand(sqlSt, Conn))
{
Conn.Open();
cmd.Parameters.AddWithValue("CategoryID", treeView1.SelectedNode.Tag);
cmd.Parameters.AddWithValue("@FilePath", Path.GetFullPath(fi.FileName));
cmd.Parameters.AddWithValue("@FileName", Path.GetFileName(file.Name));
cmd.Parameters.AddWithValue("@FileSize", file.Length / 1024);
cmd.Parameters.AddWithValue("@FileExtension", file.Extension);
cmd.Parameters.AddWithValue("@AddedBy", UserCon.Text);
cmd.Parameters.AddWithValue("@LastActioned", file.LastAccessTime);
cmd.ExecuteNonQuery();
SetValueforAddedB = UserCon.Text;
SetValueforType = Typtxt.Text;
Conn.Close();
}
}
File
有一个静态方法,您可以使用它来查看文件是否存在。
if (File.Exists("path"))
{
// upload code
}
else
{
// show message or whatever
}
i'm struggling to understand the differences between fileinfo, directoryinfo
FileInfo
用于交互和处理文件。 DirectoryInfo
用于与文件夹(目录)进行交互和工作。
如果您正在对文件执行单个操作,则使用静态 class File
。 Directory
也是如此。但是,如果您正在执行多个操作,例如检查文件是否存在,然后读取文件,然后更改文件,然后保存文件,那么在这种情况下使用 FileInfo
。
File
和 Directory
是静态的 classes。 FileInfo
和 DirectoryInfo
是非静态的,因此您可以创建一个实例,保留该实例并在该实例上执行所有操作。
任何人都可以帮助我,我仍在弄清楚 C#,我在我的主窗体上有一个 datagridview,目前在那里保存上传的文件信息,但我想检查一下文件是否存在如果确实上传了就不要上传,但老实说我很难理解文件信息、目录信息之间的区别以及如何使用它,请查看我的代码, 提前致谢!
string sqlSt = "Insert into Documents (CategoryID, PathofDocument,DocumentName,FileSize,FileExtension,AddedBy,LastActioned) values (@CategoryID,@FilePath,@FileName,@FileSize,@FileExtension,@AddedBy,@LastActioned)";
OpenFileDialog fi = new OpenFileDialog();
//DialogResult result = fi.ShowDialog();
fi.Filter = "allfiles (*.*)|*.* |Text files(*.txt)|*.txt | Excel Files (*.xls)| *.xls |EmailFiles (*.msg) | *.msg";
string fileio = fi.FileName;
FileInfo file = new FileInfo(fileio);
if (fi.ShowDialog() != DialogResult.OK)
{
if (file.Exists(,fileio))
{ }
// MessageBox.Show("File Already exist" + file.FullName);
}
else
if (file.Exists != true)
{
using (SqlConnection Conn = new SqlConnection(Connstring))
{
using (SqlCommand cmd = new SqlCommand(sqlSt, Conn))
{
Conn.Open();
cmd.Parameters.AddWithValue("CategoryID", treeView1.SelectedNode.Tag);
cmd.Parameters.AddWithValue("@FilePath", Path.GetFullPath(fi.FileName));
cmd.Parameters.AddWithValue("@FileName", Path.GetFileName(file.Name));
cmd.Parameters.AddWithValue("@FileSize", file.Length / 1024);
cmd.Parameters.AddWithValue("@FileExtension", file.Extension);
cmd.Parameters.AddWithValue("@AddedBy", UserCon.Text);
cmd.Parameters.AddWithValue("@LastActioned", file.LastAccessTime);
cmd.ExecuteNonQuery();
SetValueforAddedB = UserCon.Text;
SetValueforType = Typtxt.Text;
Conn.Close();
}
}
File
有一个静态方法,您可以使用它来查看文件是否存在。
if (File.Exists("path"))
{
// upload code
}
else
{
// show message or whatever
}
i'm struggling to understand the differences between fileinfo, directoryinfo
FileInfo
用于交互和处理文件。 DirectoryInfo
用于与文件夹(目录)进行交互和工作。
如果您正在对文件执行单个操作,则使用静态 class File
。 Directory
也是如此。但是,如果您正在执行多个操作,例如检查文件是否存在,然后读取文件,然后更改文件,然后保存文件,那么在这种情况下使用 FileInfo
。
File
和 Directory
是静态的 classes。 FileInfo
和 DirectoryInfo
是非静态的,因此您可以创建一个实例,保留该实例并在该实例上执行所有操作。