11 在C#中写文件
在这个练习中,我们来学习如何把我们想要的东西写到文件中。我们在这个练习中还是使用File类中的方法来完成写文件的操作。
在这个练习中我们要用C#创建一个纯文本文件ex11.txt 放到c盘的Exercise11目录下。通常c盘下是没有Exercise11目录的,请先建立这个目录。我们的C#程序会让用户输入三行内容,然后我们的程序会把用户输入的内容写到ex11.txt文件中。我们不想把文件的名字ex11.txt写死在程序里边。我们想在程序运行的时候,让用户输入要创建的文件的名字。
你创建一个项目。解决方案名称为Sloution11,项目名称为Exercise11,项目类型为控制台程序。
点击Program.cs. 在Main方法中加入这些代码。

这个程序的功能看起来蛮复杂的。我在这里给大家简要一下。
14,15行代码:让用户输入要创建的文件名称。文件我们要求放在c盘的exercise11目录下。
17, 18行代码:把文件的目录名称和文件名称连接在一起,组成一个完成的文件路径名称。这样我们的程序才能创建这个文件
19行代码:判断用户指定的这个文件在c盘的exercise11目录下是否存在
20-34行代码:如果文件不存在,会创建这个文件将用户输入的内容存在这个文件中
35-38行代码:如果文件已经存在,提示用户文件已经存在。
21-26行代码:提示用户输入三行文字,将每行文字存在一个字符串类型的变量中。
28行代码:将三行文字连在一起放在一个变量中。\n 是一个转移字符,告诉程序这是一行的结尾,下面要开始新的一行。
33行代码:调用File.WriteAllText() 方法将三行文字写到文件中,第一个参数是文件的完整路径和名字,第二个参数是往文件中写的内容,第三个参数是写入内容的编码格式。
运行结果

练习
1. 为每一条语句加上注释,解释它的功能。如果不明白,可以现在网上查询。找不到,记得咨询我。
2. 修改程序,让用户输入5句话,写入用户指定的文件中
3. C#中还有其他写文件的方法,试着用其他方法写一下文件
4. 去掉28行加入的那些"\n".运行程序看看会得到什么结果。在网上查询一下还有那些和\n类似的转意字符,试着使用一下它们,看看会得到什么结果。
付费解答C#入门学习过程中碰到的各种问题。
零基础学习C#入门,大多数的问题都可以通过自学或借助互联网解决。
但是还是会有一些问题,不是那么容易解决,成为了你学习的绊脚石。最后甚至造成你学习的半途而废。通常学习C#编程入门,你会遇到20到30多个你不能很容易解决的问题。
这个时候,你最需要什么呢?
对!一个专业的老师给你帮助!
你在学习本课程中,遇到任何问题都可以通过qq或email想本教程作者进行求助。
只需30元,你就可以得到本教程作者的三次专业解答。所以你只需不到300元就可以顺利的完成C#入门,从此推开软件行业的大门。
付费方式非常简单:
用微信扫描下面的二维码。在付款留言中留下你的qq号或email地址就可以啦。

教育不是要便宜,而是要可靠!真正聪明的人,更懂得花钱让专业的人为自己服务,提高自己的效率。
老师qq:2040227296
老师email:2040227296@qq.com
11 在C#中写文件的更多相关文章
- Java中写文件操作
OutputStream 和 Writer OutputStream类(直接操作byte数组) 该类是字节输出流的抽象类,定义了输出流的各种操作方法.如下图是OutputStream的层次结构: By ...
- 使用VBA从工作表中读图片,以及给工作表中写文件
因为工作的原因,需要用到VBA,碰到读图片和写图片: Sub Macro01() '从工作表中保存图片 Application.ScreenUpdating = False Dim pth, shp, ...
- C++中写文件ofstream 的<< 操作符 与C风格的fwrite 的笔记
在某次工作中,调用了某SDK接口,该接口通过一个回调函数返回需要的内容.我们需要的内容是H.264码流,该码流通过一个unsigned char* 变量带回,另外还有一个长度 int length.为 ...
- 往SD卡中写文件的方法。
package com.lixu.writetosd; import java.io.File; import java.io.FileOutputStream; import java.io.IOE ...
- Andorid中写文件后在电脑上看不到的解决办法
每次通过输出流往SD卡写入文件,连接上电脑,用MTP的方式模拟一个移动磁盘,打开磁盘却没有这样一个文件,而通过adb的方式查看就有,造成这个现象的原因是,每次写入之后,MTP的数据库并没有更新,因为更 ...
- HDFS写文件过程分析
转自http://shiyanjun.cn/archives/942.html HDFS是一个分布式文件系统,在HDFS上写文件的过程与我们平时使用的单机文件系统非常不同,从宏观上来看,在HDFS文件 ...
- VC中对文件的读写
http://www.cnblogs.com/LJWJL/archive/2012/10/06/2712466.html 注意: 1.由于C是缓冲写 所以要在关闭或刷新后才能看到文件内容 2.电脑处理 ...
- 【转】VC中对文件的读写
原文网址:http://www.cnblogs.com/LJWJL/archive/2012/10/06/2712466.html 注意: 1.由于C是缓冲写 所以要在关闭或刷新后才能看到文件内容 2 ...
- [笔记]Go语言写文件几种方式性能对比
Go语言中写文件有多种方式,这里进行如下几种方式的速度对比: 打开文件,写入内容,关闭文件.如此重复多次 打开文件,写入内容,defer 关闭文件.如此重复多次 打开文件,重复多次写入内容,defer ...
随机推荐
- Andrew and Chemistry(树的同构)
Andrew and Chemistry(树的同构) 题链 将一棵树转化为最小表示法,将此时的树哈希一下,同时用map进行标记,就可以判断树是否存在同构 #include <map> #i ...
- Docker学习总结(17)——学会使用Dockerfile
Docker.Dockerfile.Docker镜像.容器这些都是什么鸟? 老生常谈,再再再--普及一下: Docker: 最早是dotCloud公司出品的一套容器管理工具,但后来Docker慢慢火起 ...
- asp.net mvc 4.0 新特性之移动特性
asp.net mvc 4.0 新特性之移动特性 为不同的客户端提供不同的视图 手动重写 UserAgent,从而强制使用对应的视图 示例1.演示如何为不同的客户端提供不同的视图Global.asax ...
- 遇到很多次,要注意区分service调用,本地用户调用这些区别
WTSQueryUserToken返回1314 The WTSQueryUserToken function obtains the primary access token of the log ...
- JAVA NIO 之Channel
缓冲区本质上是一块可以写入数据,然后可以从中读取数据的内存.Channel 通道就是将数据传输给 ByteBuffer 对象或者从 ByteBuffer 对象获取数据进行传输. Channel 用于在 ...
- ubuntu 搭建 svn服务器,使用http方式访问
原文: http://blog.csdn.net/wobuxingfang/article/details/70835414 参考:http://www.cnblogs.com/zzugyl/p/36 ...
- Linux安装MATLAB
Linux下的MATLAB在2013a及以后的版本中,就不再支持32位机了.所以32位Linux系统无法安装2013a及以后版本.[1] Linux下安装MATLAB时,需要先配置好JRE,可以参考: ...
- How to use eclipse quickly
--> // TODO Quickly find outstanding event 快速查找未完成事件 eg: // TODO Robin --> Templates ...
- 51nod 1611 金牌赛事
被亮亮D飞啦!!QWQ 这题明明是最大权闭合子图+线段树优化构图好不好 被迫考虑DP,并且考虑f[i]表示到第i个位置的最大值(第i个位置可选可不选) 对于最终的答案,我们可以分割成一段一段的,也就是 ...
- YTU 2706: 编写一个函数求最大的n值
2706: 编写一个函数求最大的n 值. 时间限制: 1 Sec 内存限制: 128 MB 提交: 341 解决: 132 题目描述 编写一个函数求满足以下条件的最大的n.:12+22+32+-+ ...