在这个练习中,我们来学习如何把我们想要的东西写到文件中。我们在这个练习中还是使用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#中写文件的更多相关文章

  1. Java中写文件操作

    OutputStream 和 Writer OutputStream类(直接操作byte数组) 该类是字节输出流的抽象类,定义了输出流的各种操作方法.如下图是OutputStream的层次结构: By ...

  2. 使用VBA从工作表中读图片,以及给工作表中写文件

    因为工作的原因,需要用到VBA,碰到读图片和写图片: Sub Macro01() '从工作表中保存图片 Application.ScreenUpdating = False Dim pth, shp, ...

  3. C++中写文件ofstream 的<< 操作符 与C风格的fwrite 的笔记

    在某次工作中,调用了某SDK接口,该接口通过一个回调函数返回需要的内容.我们需要的内容是H.264码流,该码流通过一个unsigned char* 变量带回,另外还有一个长度 int length.为 ...

  4. 往SD卡中写文件的方法。

    package com.lixu.writetosd; import java.io.File; import java.io.FileOutputStream; import java.io.IOE ...

  5. Andorid中写文件后在电脑上看不到的解决办法

    每次通过输出流往SD卡写入文件,连接上电脑,用MTP的方式模拟一个移动磁盘,打开磁盘却没有这样一个文件,而通过adb的方式查看就有,造成这个现象的原因是,每次写入之后,MTP的数据库并没有更新,因为更 ...

  6. HDFS写文件过程分析

    转自http://shiyanjun.cn/archives/942.html HDFS是一个分布式文件系统,在HDFS上写文件的过程与我们平时使用的单机文件系统非常不同,从宏观上来看,在HDFS文件 ...

  7. VC中对文件的读写

    http://www.cnblogs.com/LJWJL/archive/2012/10/06/2712466.html 注意: 1.由于C是缓冲写 所以要在关闭或刷新后才能看到文件内容 2.电脑处理 ...

  8. 【转】VC中对文件的读写

    原文网址:http://www.cnblogs.com/LJWJL/archive/2012/10/06/2712466.html 注意: 1.由于C是缓冲写 所以要在关闭或刷新后才能看到文件内容 2 ...

  9. [笔记]Go语言写文件几种方式性能对比

    Go语言中写文件有多种方式,这里进行如下几种方式的速度对比: 打开文件,写入内容,关闭文件.如此重复多次 打开文件,写入内容,defer 关闭文件.如此重复多次 打开文件,重复多次写入内容,defer ...

随机推荐

  1. Andrew and Chemistry(树的同构)

    Andrew and Chemistry(树的同构) 题链 将一棵树转化为最小表示法,将此时的树哈希一下,同时用map进行标记,就可以判断树是否存在同构 #include <map> #i ...

  2. Docker学习总结(17)——学会使用Dockerfile

    Docker.Dockerfile.Docker镜像.容器这些都是什么鸟? 老生常谈,再再再--普及一下: Docker: 最早是dotCloud公司出品的一套容器管理工具,但后来Docker慢慢火起 ...

  3. asp.net mvc 4.0 新特性之移动特性

    asp.net mvc 4.0 新特性之移动特性 为不同的客户端提供不同的视图 手动重写 UserAgent,从而强制使用对应的视图 示例1.演示如何为不同的客户端提供不同的视图Global.asax ...

  4. 遇到很多次,要注意区分service调用,本地用户调用这些区别

    WTSQueryUserToken返回1314   The WTSQueryUserToken function obtains the primary access token of the log ...

  5. JAVA NIO 之Channel

    缓冲区本质上是一块可以写入数据,然后可以从中读取数据的内存.Channel 通道就是将数据传输给 ByteBuffer 对象或者从 ByteBuffer 对象获取数据进行传输. Channel 用于在 ...

  6. ubuntu 搭建 svn服务器,使用http方式访问

    原文: http://blog.csdn.net/wobuxingfang/article/details/70835414 参考:http://www.cnblogs.com/zzugyl/p/36 ...

  7. Linux安装MATLAB

    Linux下的MATLAB在2013a及以后的版本中,就不再支持32位机了.所以32位Linux系统无法安装2013a及以后版本.[1] Linux下安装MATLAB时,需要先配置好JRE,可以参考: ...

  8. How to use eclipse quickly

    --> // TODO Quickly find outstanding event 快速查找未完成事件        eg: // TODO Robin   --> Templates  ...

  9. 51nod 1611 金牌赛事

    被亮亮D飞啦!!QWQ 这题明明是最大权闭合子图+线段树优化构图好不好 被迫考虑DP,并且考虑f[i]表示到第i个位置的最大值(第i个位置可选可不选) 对于最终的答案,我们可以分割成一段一段的,也就是 ...

  10. YTU 2706: 编写一个函数求最大的n值

    2706: 编写一个函数求最大的n 值. 时间限制: 1 Sec  内存限制: 128 MB 提交: 341  解决: 132 题目描述 编写一个函数求满足以下条件的最大的n.:12+22+32+-+ ...