打开文件练习
来源:互联网 发布:mysql中if exists用法 编辑:程序博客网 时间:2024/06/03 08:21
using System;using System.Collections.Generic;using System.Diagnostics;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;namespace 打开文件练习{ class Program { static void Main(string[] args) { Console.WriteLine("请输入要打开的文件所在的路径"); string filePath = Console.ReadLine(); Console.WriteLine("请输入要打开的文件的名字"); string fileName = Console.ReadLine(); //通过简单工厂设计模式返回父类 BaseFile bf = GetFile(filePath, fileName); if (bf != null) { bf.OpenFile(); } Console.ReadKey(); } static BaseFile GetFile(string filePath,string fileName) { BaseFile bf = null; string strExtension = Path.GetExtension(fileName);//3.txt switch (strExtension) { case ".txt": bf = new TxtFile(filePath, fileName); break; case ".avi": bf = new AviFile(filePath, fileName); break; case ".mp4": bf = new MP4File(filePath, fileName); break; } return bf; } } class BaseFile { //字段、属性、构造函数、函数、索引器 private string _filePath; public string FilePath//ctrl+R+E 自动封装属性 { get { return _filePath; } set { _filePath = value; } } //自动属性 prop+两下tab 自动属性,隐形的私有字段 public string FileName { get; set; } public BaseFile(string filePath, string fileName)//设计的父类类型文件,用于继承 { this.FilePath = filePath; this.FileName = fileName; } //设计一个函数 用来打开指定的文件 public void OpenFile() { ProcessStartInfo psi = new ProcessStartInfo(this.FilePath + "\\" + this.FileName);//2个加起来是全路径文件名 Process pro = new Process(); pro.StartInfo = psi; pro.Start(); } } class TxtFile : BaseFile { //因为子类会默认调用父类无参数的构造函数 public TxtFile(string filePath, string fileName) : base(filePath, fileName) { } } class MP4File : BaseFile { public MP4File(string filePath, string fileName) : base(filePath, fileName) { } } class AviFile : BaseFile { public AviFile(string filePath, string fileName) : base(filePath, fileName) { } }}
0 0
- 练习:打开,保存文件
- 打开文件练习
- 练习 打开文件&保存文件
- Java-GUI(练习-打开文件)-(练习-保存文件)
- GUI(练习-打开和保存文件)
- GUI——练习(打开保存文件)
- Java基础学习之io流的练习(NotePad的打开文件和保存文件)
- 打开路径打开文件
- 文件练习
- 文件练习
- 机试练习 北理14年01、02题 打开文件顺序
- 打开文件
- 打开文件
- 打开文件
- 文件打开
- 打开文件
- 打开文件
- ~~~打开文件~~~
- 如何给magento的产品分类创建一个自定义属性?
- Linux入门:常用命令:rpm、yum
- 帮助命令
- CUDA 学习(十一)、共享内存
- php请求url过长改用curl
- 打开文件练习
- android:includeFontPadding的使用:清除TextView字体周边空白
- oracle表的创建及管理 主键自增 外键等
- 转载获取路径C#中AppDomain.CurrentDomain.BaseDirectory与Application.StartupPath的区别
- js中cookie使用详细讲解
- WinSock2.h(109) : error C2011: 'fd_set' : 'struct' type redefinition
- 导致MyEclipse内存不足的原因分析及解决办法
- datatable数据类型方法
- 别名与快捷键