在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
先学会如何使用OpenFileDialog和SaveFileDialog控件浏览和选择文件、使用System.IO.File和System.IO.Directory的对象来操纵文件系统(文件和目录)。 实际上OpenFileDialog控件只是让用户选择文件,而不是打开文件——故选中双击,退出对话框: selectFile.InitialDirectory = @"F:\"; //设置初始目录 selectFile.Title = "打开文件"; selectFile.FileName = ""; //设置默认文件名 创建文件过滤器(过滤器格式—Description:*.extension): selectFile.Filter = "所有文件 (*.*) | *.*|文本文件 (*.txt) | *.txt"; selectFile.FilterIndex = 2; //设置默认的过滤器,1为第一个 最后得到对话框选择的文件名: if (selectFile.ShowDialog() == DialogResult.OK) //根据用户是否确认选择,采取相应操作 this.FilePath.Text = selectFile.FileName; else this.FilePath.Text = ""; SaveFileDialog与OpenFileDialog类似: inputFile.InitialDirectory = @"F:\"; inputFile.Title = "保存文件"; inputFile.FileName = ""; inputFile.Filter = "文本文件 (*.txt) | *.txt|所有文件 (*.*) | *.*"; if(inputFile.OverwritePrompt) { inputFile.OverwritePrompt = false; //saveFileDialog才有的属性,默认为true,表示如果用户选择了已有文件,替换已有文件前让用户确认 if(inputFile.ShowDialog() == DialogResult.OK) { FilePath.Text = inputFile.FileName; //自动将绝对路径(完整路径)返回 } } 在File类中,具体的文件操作有:创建、删除、移动、重命名文件和目录。 复制:File.copy(源路径, 目标路径)、删除:File.Delete(文件路径)、移动或重命名:File.Move(源路径/源文件, 目标路径/重命名)。可用File.Exists(path)检测文件是否存在。 通过File对象、FileAttributes对象获取文件属性: 通过File对象获取:创建时间GetCreationTime(path)、最后被访问时间GetLastAccessTime(path)、最后被修改时间GetLastWriteTime(path)。 通过FileAttributes对象获取,然后通过与FileAttributes的每一种属性(如.Normal、.Hidden、.ReadOnly、.System、.Temporary、.Archive)相&,将结果Convert.ToBoolean转换成true、false,true则说明满足该属性,例如: FileAttributes fattr = File.GetAttributes(path); attr.Append("只读: " + Convert.ToBoolean(fattr & FileAttributes.ReadOnly) + "\r\n"); 目录操作Directory类:创建、移动或重命名、删除: string path = @"F:\shutao"; Directory.CreateDirectory(path); //获取文件名(包含路径)和文件路径(不含文件名,末尾也不带\):都有两种方法,通过获得文件本身的属性和调用Path类的静态方法 FileInfo file = new FileInfo(@"E:\shutao\shutao.txt"); MessageBox.Show(file.FullName); MessageBox.Show(file.DirectoryName); MessageBox.Show(Path.GetDirectoryName(file.FullName)); 工程的运行程序的路径(Debug\路径):MessageBox.Show(System.AppDomain.CurrentDomain.BaseDirectory)。 读写文本文件: Write:
Read: 使用StreamReader类,与使用StreamWriter很相似,关键区别在于文件不存在时,处理的方式不同: StreamWriter:当文件不存在时,新建一个文件——StreamReader:抛出异常。 具体使用:
|
请发表评论