MVC07
1. 讲解ASP.net MVC的I/O操作
新建一个控制台程序,输入代码如下
using System;
using System.IO; namespace IO
{
class Program
{
static void Main(string[] args)
{
// 判断文件是否存在
Console.WriteLine(File.Exists(@"C:\Users\ASUS\Desktop\memo\a.txt"));
// 判断目录是否存在
Console.WriteLine(Directory.Exists(@"C:\"));
// 下面例子将展示如何查找某一目录下所有exe文件的信息
// . 表示当前目录
string path = ".";
if (args.Length > )
{
// 如果需要在其他目录执行则打开控制行,之后进入项目下的Debug目录,见下图
path = args[];
}
else
{
Console.WriteLine("Directory not found");
} DirectoryInfo dir = new DirectoryInfo(path);
foreach(FileInfo f in dir.GetFiles("*.exe"))
{
string name = f.Name;
long size = f.Length;
DateTime creationTime = f.CreationTime;
Console.WriteLine(name);
Console.WriteLine(size);
Console.WriteLine(creationTime);
Console.WriteLine("------------");
}
}
}
}
File,Directory为一个静态的Class,无法实例化。

2.写入文件
using System;
using System.IO; namespace IO
{
class Program
{
private const string FILE_NAME = "a.txt";
static void Main(string[] args)
{
if (File.Exists(FILE_NAME))
{
Console.WriteLine("already exists.");
return;
} FileStream fs = new FileStream(FILE_NAME, FileMode.Create);
BinaryWriter w = new BinaryWriter(fs); for(int i = ; i < ; i++)
{
w.Write("a");
}
w.Close();
fs.Close();
}
}
}
如果文件已存在,我们需要覆盖内容到里面怎么办?
using System;
using System.IO; namespace IO
{
class Program
{
private const string FILE_NAME = "a.txt";
static void Main(string[] args)
{
using(StreamWriter w = File.AppendText("test.txt"))
{
Log("Hi,is me.", w);
Log("how are u", w);
w.Close();
} }
// 方法,用于写入数据
public static void Log(string logMessage,TextWriter w)
{
w.Write("\r\nLog Entry");
w.WriteLine(":{0}", logMessage);
w.Flush(); }
}
}
using 内代码执行完毕后会自动释放资源,常用于读写文件以及连接数据库
2.读取文件
using System;
using System.IO; namespace IO
{
class Program
{
private const string FILE_NAME = "a.txt";
static void Main(string[] args)
{
if (!File.Exists(FILE_NAME))
{
Console.WriteLine("{0} does not exist!",FILE_NAME);
return;
}
// 路径,操作类别,权限
FileStream fs = new FileStream(FILE_NAME, FileMode.Open, FileAccess.Read);
BinaryReader r = new BinaryReader(fs);
// 读取前5个字符
for(int i = ; i < ; i++)
{
Console.WriteLine(r.ReadString());
}
r.Close();
fs.Close();
} }
}
完整读取某一文件:
using System;
using System.IO; namespace IO
{
class Program
{
private const string FILE_NAME = "test.txt";
static void Main(string[] args)
{
if (!File.Exists(FILE_NAME))
{
Console.WriteLine("{0} does not exist!",FILE_NAME);
return;
}
using(StreamReader sr = File.OpenText(FILE_NAME))
{
string input;
while((input = sr.ReadLine())!=null)
{
Console.WriteLine(input);
}
Console.WriteLine("ended");
sr.Close();
}
} }
}
MVC07的更多相关文章
- 快速入门系列--MVC--07与HTML5移动开发的结合
现在移动互联网的盛行,跨平台并兼容不同设备的HTML5越来越盛行,很多公司都在将自己过去的非HTML5网站应用渐进式的转化为HTML5应用,使得一套代码可以兼容不同的物理终端设备和浏览器,极大的提高了 ...
- MVC-07 案例1
>>>>>ContosoUniversity网站 ------------------------------------------- 一.并发冲突 1. 为什么会并发 ...
- MVC-07 案例2
二.电子商务网站 掌握该网站的开发流程和设计思路,并为数据模型中商品.商品分类,这两个类编写代码. 1.需求分析 2.数据模型规划 (1)商品类别 (2)商品信息 (3)会员信息 (4)购物车项目 ( ...
- MVC-07数据库
部分6:添加数据库. 创建数据库 Visual Web Developer带有免费的SQL数据库,名为SQL Server Compact. 数据库创建: 1.右键点击解决方案资源管理器中的App_D ...
- 快速入门系列--MVC--01概述
虽然使用MVC已经不少年,相关技术的学习进行了多次,但是很多技术思路的理解其实都不够深入.其实就在MVC框架中有很多设计模式和设计思路的体现,例如DependencyResolver类就包含我们常见的 ...
- 快速入门系列--MVC--02路由
现在补上URL路由的学习,至于蒋老师自建的MVC小引擎和相关案例就放在论文提交后再实践咯.通过ASP.NET的路由系统,可以完成请求URL与物理文件的分离,其优点是:灵活性.可读性.SEO优化.接下来 ...
随机推荐
- Nginx_配置文件解读及模板
Nginx 介绍 # nginx的最大优势在于处理静态文件和代理转发功能,支持7层负载均衡和故障隔离. 动静分离是每个网站发展到一定规模之后必然的结果.静态请求则应当最好将其拆分,并启用独立的域名,既 ...
- shell_常规小脚本
shell 1.检查Mysql的健康状态 #!/bin/bashpgrep -x mysqld &> /dev/nullif [ $? -ne 0 ]thenecho “At time: ...
- 2013 ACM网络搜索与数据挖掘国际会议
ACM网络搜索与数据挖掘国际会议" title="2013 ACM网络搜索与数据挖掘国际会议"> 编者按:ACM网络搜索与数据挖掘国际会议(6th ACM Conf ...
- 解决scoped 下confirm 样式问题
- sqlserver中的数据导到mysql相关
一.在sqlserver中生成数据表脚本,粘贴到记事本中,如下语法要进行替换 1.int IDENTITY (1, 1) NOT NULL——>id int unsigned NOT NULL ...
- iOS高仿微信悬浮窗、忍者小猪游戏、音乐播放器、支付宝、今日头条布局滚动效果等源码
iOS精选源码 iOS WKWebView的使用源码 模仿apple music 小播放器的交互实现 高仿微信的悬浮小窗口 iOS仿支付宝首页效果 [swift]仿微信悬浮窗 类似于今日头条,网易新闻 ...
- Qt OpenCV::Mat与Qt::QImage相互转换
Mat转QImage QImage mat2qim(Mat & mat) { cvtColor(mat, mat, COLOR_BGR2RGB); QImage qim((const unsi ...
- mac android sdk manager 无法更新(被墙)
http://www.androiddevtools.cn/ 一句话,相见恨晚!! 想把以前的旧安卓项目拿到MAC上 环境就卡住了,以前的包是4.4的,想试试5.0的,更新不动 Android Too ...
- python两个队列实现一个栈和两个栈实现一个队列
1.两个栈实现一个队列 两个栈stack1和stack2, push的时候直接push进stack1,pop时需要判断stack1和stack2中的情况.如果stack2不为空的话,直接从stack2 ...
- 数据结构中的顺序表和链表(Python语言)
转载:https://blog.csdn.net/weixin_43187669/article/details/96426362 算法是为了解决实际问题而设计的,数据结构是算法需要处理的问题载体. ...